我一直在使用jquery serialize()函数来序列化Modal中的表单值并通过ajax提交它。除了少数字段的select2下拉列表之外,这样可以正常工作。
我有一个国家和州的游行。我在调用外部脚本后通过jquery设置这些字段。
function openeditmodal(){
$('.edit').click(function() {
$('#editModal').on('show', function(){
$.getScript("js/editlocation.js");
});
$("#editcountryId").select2("data", {text: $(this).attr('data-country') });
$("#editstateId").select2("data", { text: $(this).attr('data-state') });
$("#editcityId").select2("data", { text: $(this).attr('data-city') });
})
}
$(function() {
$("#saveemployee").click(function(){
var form = $('.updateemployee').serializeArray();
alert(form);//doesnt capture data of select2 dropdown
})
<div class="modal hide in" id = "editModal">
<form class = "updateemployee">
<select name="ccountry" class="editcountries" id="editcountryId" required>
<select name="cstate" class="editstates" id="editstateId" required >
<button type="submit" id = "saveemployee">Save</button>
</form>
</div>