我有以下功能将电子邮件地址发送到ajax,以使每个选项都成为select2选项。它不适用于多个电子邮件地址,只适用于一个电子邮件地址。如何让它用于更多电子邮件地址?
onclick='show_general_email_modal(\"$emails\");'
这发送以下内容:
onclick="show_general_email_modal("1@1.com;2@2.com;3@3.com;");"
这是Ajax:
function show_general_email_modal(emailaddress) {
var $submit_data = new FormData();
$.ajax({
type: "POST",
url: location.href,
data: $submit_data,
contentType: false,
cache: false,
processData: false,
success: function (data) {
process_response_data(data);
$('#recipient')
.empty()
.append('<option selected value="' + emailaddress + '">' + emailaddress + '</option>');
$('#recipient').trigger('change');
$("#email").modal();
}
});
}
id收件人是select2表单元素。
请帮助我理解我做错了什么。
答案 0 :(得分:0)
试试这个。你需要像这样emailaddress.split(";")
分割emailaddress
并附加forEach
function show_general_email_modal(emailaddress) {
var $submit_data = new FormData();
$.ajax({
type: "POST",
url: location.href,
data: $submit_data,
contentType: false,
cache: false,
processData: false,
success: function(data) {
process_response_data(data);
$('#recipient').empty()
var em = emailaddress.split(";")
em.forEach(function(a) {
if(a){
$('#recipient').append('<option selected value="' + a + '">' + a + '</option>');
}
})
$('#recipient').trigger('change');
$("#email").modal();
}
});
}