0

私はこれに似たものを使用しています:

$("input").each(function(number,element)
{
    var inputField=$(element);

    if(inputField.data("FieldLocalizationStrings") == null)
        inputField.data("FieldLocalizationStrings", []);
}

そしてデータを追加するには:

var data=inputField.data("FieldLocalizationStrings");
data.push({Language:inputField.attr("language"),Value:inputField.val()});

しかし、取得しようとすると、どのDOM要素に保存されているかを無視し、すべて同じ要素に保存されているかのようにロードするようです。なぜこれが起こるのか誰かが考えていますか?私は以前に同じテクニックを使用し、それが機能することが証明されましたが、今ではこれがなぜ起こっているのか理解できません。複数の入力フィールドに保存されないことを確認しましたが、ロードするとそのまま動作します。

4

2 に答える 2

2

更新ここにフィドルを
追加

$("input").each(function(number,element)
{
    var inputField=$(element);

    if(inputField.data("FieldLocalizationStrings") == null)
        inputField.data("FieldLocalizationStrings", [
            {
                Language:inputField.attr("language"),
                Value:inputField.val()
            }
    ]);

    //If later you want to append to the data
    inputField.data("FieldLocalizationStrings").push({/* Your data */})
}
于 2012-07-30T09:49:50.077 に答える
0

http://api.jquery.com/jQuery.each/-ドキュメントに関しては、2番目のパラメーターとして値を取得します。要素のデータを設定する場合は、これを使用する必要があります。

于 2012-07-30T09:54:08.587 に答える