0

私はjqueryとJSONが初めてで、これが私がやろうとしていることです。firstName フィールド、lastName フィールド、およびクラス「actionDueDate_input」の日付フィールドのリストがあります。firstName、lastName を持ち、すべての日付フィールドを反復して JSON に挿入する JSON を生成したいと考えています。

私は次のことをしようとしていますが、「未定義」になっています。ここで基本的な問題が発生していますが、それを理解することはできません。

var dateval="";
$('div.action input.actionDueDate_input').each(function(index)
{
    if(index>0)
    {
        dateval+=",";
    }
    dateval+="{";
    dateval+='"';
    dateval+="actionDueDate";
    dateval+='"'+":";
    dateval+='"'+$(this).val()+'"'+"}";
});

alert(dateval);

var values={"contact":
[
    {
        "givenName":givenName,
        "familyName":familyName,
        "actionSet":
        [
            dateval
        ],
    }
]};

alert('Action Dates for client one:  '+values.contact[0].actionSet[0].actionDueDate);
4

1 に答える 1

0

JSON は、配列ではなく、特別にフォーマットされた文字列の形式を取ります。配列は、JSON を解析したときに得られるものです。

配列を JSON 化するには、 を使用しますJSON.stringify(arr)

以下は、プリミティブ フォームのすべての値を取得し、それらを JSON 文字列にバンドルする例です。

var formInputs = {},
    jsonString;

$('form').find('input', 'select').each(function(){
    formInputs[this.name] = this.value;
});

jsonString = JSON.stringify(formInputs);
于 2013-01-15T20:48:59.700 に答える