jquery下拉选项值不改变按钮,按钮链接正在重复

问题描述:

我很难搞清楚我的代码。当用户从下拉列表中选择一家公司时,姓名,电话号码,电子邮件和cc全部正确显示,并在选择不同选项时更改。我想用一个“mailto:”链接的按钮来使用电子邮件和cc的值jquery下拉选项值不改变按钮,按钮链接正在重复

我为href链接创建了变量 现在,当我选择一个选项时,我希望它显示一个按钮给个人发电子邮件;它目前显示三个“发送电子邮件”链接(我的三个公司选项)

然后,当我点击按钮时,它只显示一个cc地址不是两个,我的主题行被切断或不得到补充。

而且按键值不从选择第一个选项而改变。所以,如果我改变选择的选项,姓名和电话的变化,但不会在链接的电子邮件和CC的变量。

Here is my Plunker example

$(document).ready(function() { 
 

 
    $("select").change(function() { 
 
    $.ajax({ 
 
     url: 'main.xml', 
 
     type: 'GET', 
 
     dataType: 'xml', 
 
     async: false, 
 
     success: function(data) { 
 
     retrieveXml(data); 
 
     }, 
 
     error: function(e) { 
 
     alert(JSON.stringify(e)); 
 
     } 
 
    }); 
 
    }); 
 
}); 
 

 
var retrieveXml = function(data) { 
 
    $(data).find('business').each(function() { 
 
    var corpName = $(this).find('business-name').text(); 
 

 
    // Setup Variables 
 
    var corpData = { 
 
     name: ($('name', data).text()), 
 
     phone: ($('phone', data).text()), 
 
     email: ($('email', data).text()), 
 
     businessname: ($('business-name', data).text()) 
 
    }; 
 

 
    var webOption = $('select#corps option:selected').val(); 
 
    var businessName = $('business-name', data).text(); 
 

 
    $(data).find('business').each(function(index, item) { 
 

 
     var corpName = $(this).find('business-name').text(); 
 
     if (webOption == corpName) { 
 
     $("#name").html($(this).find('manager > name').text()); 
 
     $("#phone").html($(this).find('manager > phone').text()); 
 
     $("#email").html($(this).find('manager > email').text()); 
 
     //$("#email").html($(this).find('manager > email').text()); 
 
     //$("#cced").html($(this).find('manager> cced').text()); 
 

 
     //NEW CODE 
 
     $("#btn").addClass("button-color"); 
 
     var em = $(this).find('manager > email').html(); 
 
     var cced = $(this).find('manager > cced').html(); 
 
     var subject = "&subject="; 
 
     var button = "Email Us"; 
 
     var cc = "?cc="; 
 
     var bcc = "&[email protected]" 
 
     var subMessage = "Contact a manager"; 
 
     $("#btn").append("<a href=mailto:" + em + cc + cced + bcc + subject + subMessage + " >" + button + "</a>"); 
 
     return false; 
 
     } 
 
    }); 
 

 

 
    }); 
 
};

您需要的mailto添加quotemark:

$("#btn").html('<a href="mailto:' + em + cc + cced + bcc + subject + subMessage + '">' + button + '</a>'); 
+0

谢谢你,解决了邮件发出。 现在唯一的问题是重复的“发送电子邮件”链接。我只需要得到“电邮我们”链接显示一次,而不是三次 – nicban

+0

,当不同的选项被选中 – nicban

+0

我改追加到HTML和它解决了问题我的数据不会改变, – nicban