我有一个包含动态生成字段的表单。我需要使用 .serialize() 发布表单。
阿贾克斯
$("#save").click(function () {
formData = $('#myForm').serialize();
$.ajax({
type:"POST",
url: base_url +'home/save',
data: {
formData:formData,
csrf_test_name: csrf_token
},
success: function(response){
console.log(response);
alert(response);
}
});
});
我需要使用输入字段名称发布所有数据。现在我得到了这样的所有结果:
echo $fomdata=$this->input->post('formData');
输出
room_count_new=5&room_id=1&bedcount_1_1=1&extra_age_1_1_1=middle&extra_age_1_1_2=0&bedcount_1_2=0
但是我想用相应的名字发帖。
摆脱带有formdata
属性的对象,只发送序列化的字符串并将其添加csrf
到它的末尾,或者将 csrf 作为隐藏输入添加到表单中,并让它也被序列化serialize()
$("#save").click(function() {
var formData = $('#myForm').serialize();
formData += '&csrf_test_name=' + csrf_token
$.ajax({
type: "POST",
url: base_url + 'home/save',
data: formData,
success: function(response) {
console.log(response);
alert(response)
}
});
});
然后在 php 中访问与表单中相同的名称。
$fomdata=$this->input->post();
$roomCount = $fomdata['room_count_new'];
$csrfToken = $fomdata['csrf_test_name'];
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句