[英]remove data from post before ajax request
我有一個通過JQuery ajax函數發布的表單。 該應用程序的流程如下:
我要比較的表單字段:
<input name="option[<?php echo $cmd1; ?>]" type="text">
<input name="option[<?php echo $cmd2; ?>]" type="text">
<input name="option[<?php echo $cmd3; ?>]" type="text">
<input name="option[<?php echo $cmd4; ?>]" type="text">
我只想發布已更改的輸入的值。
用於將先前提交的表單與當前提交的表單進行比較的代碼(先前提交的表單保存在數組tmpArray
:
var fields = $('.option').serializeArray();
var n = 0;
jQuery.each( fields, function( i, field ) {
if(field.value === tmpArray[n]){
console.log(field.value+" : "+tmpArray[n]+ " TRUE");
} else {
console.log(field.value+" : "+tmpArray[n]+ " FALSE");
}
n++;
});
ajax函數提交表單:
jQuery.ajax({
type:'POST',
async: true,
cache: false,
url: '/Controller/'+action,
success: function(response) {
jQuery('#resultField').val(response);
},
data: jQuery('form').serialize()
});
是否有(或更好的方法)從('form').serialize()
結果中刪除值(如果它們與tmpArray
中的值匹配)在each()循環中?
任何建議將不勝感激!
請檢查以下帖子,它可能會回答您的問題。
你可以試試看
var tempArray=[];
var tempArrayString = JSON.stringify(tempArray);
var values = $('.option').serializeArray();
values = values.filter(function(field){
return tempArrayString.indexOf(JSON.stringify(field))==-1;
});
if(values.length>0){
tempArray = values;//or something
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.