0

これを取得したい(1つのオブジェクトに4つのキーと値):

[{"sms":"Y","email":"Y","phone":"Y","oto":"Y"},{"sms":"N","email":"N","phone":"N","oto":"N"}]

しかし、これは結果です:

[{"sms":"Y"},{"email":"Y"},{"phone":"Y"},{"oto":"Y"},{"sms":"N"},{"email":"N"},{"phone":"N"},{"oto":"N"}]

ここに私のコードがあります:

var chkObj = {};
var chkArray = [];
var cntchk = 1;
$("tbody input").each(function(idx){
    var Nm = $(this).attr("name");
    this.checked ? chkObj[Nm] = 'Y' : chkObj[Nm] = 'N';
    cntchk++;
    if(cntchk = 4){
            chkArray.push(chkObj);
        chkObj = {};
        cntchk = 1;
    }
});
4

3 に答える 3

0

「=」サインイン if 条件が 1 つありません。これを試して:

var chkObj = {};
var chkArray = [];
var cntchk = 1;
$("tbody input").each(function(idx){
var Nm = $(this).attr("name");
this.checked ? chkObj[Nm] = 'Y' : chkObj[Nm] = 'N';
cntchk++;
if(cntchk **==** 4){
        chkArray.push(chkObj);
    chkObj = {};
    cntchk = 1;
}
});
于 2013-05-17T07:34:01.027 に答える
0

この式の 2 番目の等号を逃した if(cntchk = 4){ため、比較の代わりに代入があります。これをに変更if(cntchk == 4){

于 2013-05-17T07:15:36.480 に答える