如何在JavaScript中从对象中检索值

时间:2010-10-22 10:25:17

标签: javascript

您好我正在使用Java脚本变量

var parameter = $(this).find('#[id$=hfUrl]').val();

此值现在返回参数

"{'objType':'100','objID':'226','prevVoting':'"   // THIS VALUE RETURN BY 

$(本).find( '[$ ID = hfurl]')VAL();

我想将objType值存储在new:

 var OBJECTTYPE = //WHAT SHOULD I WRITE so OBJECTTYPE contain 400

我正在尝试

OBJECTTYPE = parameter.objType; // but it's not working...

我该怎么办?

2 个答案:

答案 0 :(得分:1)

尝试使用parameter['objType']

请注意:您的代码段看起来不正确,但我猜您刚发布错了。

答案 1 :(得分:1)

好的,不确定我是否正确,但让我们看看:

您说您将{'objType':'100','objID':'226','prevVoting':'作为字符串存储在隐藏字段中。该字符串不是正确的JSON字符串。它应该是这样的:

{"objType":100,"objID":226,"prevVoting":""}

您必须对JSON对象中的字符串使用双引号。有关详细信息,请参阅http://json.org/

现在,我认为您需要$(this).find('[$id=hfurl]');来检索该值。看起来您正在尝试查找标识为hfurl的元素,但$id不是有效的HTML属性。这对我来说似乎是非常错误的jQuery。试试这个:

var parameter = $('#hfurl').val();

parameter将包含一个JSON字符串,因此您必须先parse才能访问这些值:

parameter = $.parseJSON(parameter);

然后,您应该可以使用parameter.objType访问数据。

<强>更新

我不会在字段中存储“损坏的”JSON。存储类似于我上面显示的字符串,如果你想添加值,你可以解析之后这样做:

parameter.vote = vote;
parameter.myvote = vote;

它不易出错。