因此,我使用serializeArray()从表单中获取数据,我还有一个引导下拉菜单,其中我还需要发布' data -id‘属性。当然我以前也用过推送.在控制台中发布时,post var名称是未定义的,没有值.这是我的代码:
$('#changeUserInfo').unbind().bind('submit', function(){
var location = $('[data-dropper="location-dropdown"]').attr('location-id');
var newData = $('[data-changeuser="info"]:last').serializeArray();
newData.push({ location : location });
$.post(URL+'manage_accounts/update_user', newData, function(e){
if(e.status){
$('.featherlight').append('<div class="success_box"><span class="glyphicon glyphicon-thumbs-up"></span><p>User updated</p></div>');
window.location = window.location.href.split('#')[0];
} else {
$('.featherlight').append('<div class="fail_box"><span class="glyphicon glyphicon-thumbs-down"></span><p>Failed to update user</p></div>');
$('.fail_box').delay(800).fadeOut();
}
},'json');
return false;
});谢谢
发布于 2015-03-05 13:56:49
serializeArray()生成如下所示的对象数组(从文档复制)
[
{name: "a", value: "1"},
{name: "b", value: "2"}
]要匹配这种格式,您需要执行以下操作:
newData.push({ name: 'location', value: location });参考资料:serializeArray()文档
https://stackoverflow.com/questions/28878136
复制相似问题