[英]jQuery .ajax() POST Only checkboxes :checked
嘗試傳遞復選框時,我的.ajax()函數出現錯誤
這是代碼:
if(typeof($post) !== 'undefined'){
var $fname = $($post).attr('name').toString();
var data = {$fname : []};
alert($post);
alert($fname);
$($post + ":checked").each(function() {
data[$fname].push($(this).val());
});
}else{
var data = null;
}
我在螢火蟲中遇到的錯誤是: data[$fname].push($(this).val()); is undefined
data[$fname].push($(this).val()); is undefined
$post
只是傳遞給函數的類名。在這種情況下,它.del-checked
警報成功地向我警報了類名和復選框名...在這種情況下,它是del[]
我如何使它工作以便將其傳遞給$.ajax
的data
選項?
因為在創建新對象時不能將變量用作鍵
var data = {$fname : []};
和做一樣
var data = {"$fname" : []};
您需要創建對象並在方括號中添加密鑰
var data = {};
data[$fname] = [];
除非使用方括號符號, 否則不能將變量用作鍵
if (typeof($post) !== 'undefined'){
var $fname = $($post).attr('name');
var data = {};
data[$fname] = [];
$($post).filter(":checked").each(function() {
data[$fname].push( this.value );
});
}else{
var data = null;
}
關於什么:
var data = $($fname).serialize();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.