jQuery.Data设置或得到错误的项目

时间:2012-07-30 09:46:31

标签: javascript jquery selector

我正在使用similair:

$("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元素,并且只是加载它就像保存在同一元素上一样。有人知道为什么会这样吗?我之前使用过相同的技术并证明它可以工作,但现在我无法弄清楚为什么这是hapening。 我确认它没有将它保存到多个输入字段,但加载时就像它一样。

2 个答案:

答案 0 :(得分:2)

<强>更新
添加了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 */})
}

答案 1 :(得分:0)

http://api.jquery.com/jQuery.each/ - 至于文档,您将获得第二个参数值。如果您想要元素的设置数据,您应该使用它。