我正在对此使用类似的东西:

$("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元素上,而是像将所有内容保存在同一元素上一样对其进行加载。有人知道为什么会这样吗?我以前使用过相同的技术,但事实证明它可以工作,但现在我不知道为什么会这样。
我确认它不会将其保存到多个输入字段中,但是在加载时的行为却是这样。

最佳答案

更新资料
添加了a fiddle here

$("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 */})
}

09-25 19:59