2010-10-22 92 views
1

嗨,我使用Java腳本變量如何檢索對象的值在JavaScript

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

該值迴歸參數現在

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

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

我要存儲在新OBJTYPE值:

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

我想

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

我應該怎麼辦?

+0

你確定參數包含這個值嗎?首先,該對象格式錯誤(但也許你只是忘了'''),其次,對我來說,'.find('[$ id = hfurl]')'返回這樣一個對象似乎不太可能(如果您使用的是jQuery )。你在控制檯上遇到任何錯誤嗎? – 2010-10-22 10:33:54

+0

我現在編輯我的問題結賬... – 2010-10-22 10:37:21

+0

'「{'objType':'100','objID':'226','prevVoting':'」'仍然是不正確的語法。什麼錯誤? '$(this).find('[$ id = hfurl]')'可能會返回一個jQuery對象。你在使用jQuery嗎? – 2010-10-22 10:38:53

回答

1

嘗試使用parameter['objType']

只是說明:你的代碼片段看起來不正確,但我猜你剛貼錯了。

+1

假設一切都是正確的,如果parameter ['objType'] '工作,那麼'parameter.objType'也應該工作。 – 2010-10-22 10:37:32

+0

我已編輯我的問題,你可以檢查............ – 2010-10-22 10:38:09

+0

沒有參數['objType']它不工作.... – 2010-10-22 10:38:59

1

好了,不知道如果我是正確的,但讓我們看看:

你說你是存儲{'objType':'100','objID':'226','prevVoting':'作爲一個隱藏字段的字符串。該字符串不是正確的JSON字符串。它應該看起來像這樣:

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

您必須對JSON對象內的字符串使用雙引號。欲瞭解更多信息,請參閱http://json.org/

現在,我認爲與$(this).find('[$id=hfurl]');你想檢索該值。看起來您正在嘗試查找ID爲hfurl的元素,但$id不是有效的HTML屬性。這對我來說似乎是非常錯誤的jQuery。試試這個:

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

parameter將包含一個JSON字符串,所以你必須parse,然後才能訪問這些值:

parameter = $.parseJSON(parameter); 

那麼你應該能夠parameter.objType訪問數據。

更新:在現場

我不會存儲 「破」 JSON。存儲一個類似於上面我腳穿的字符串,如果你想添加值,您可以後做解析像這樣:

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

這是不容易出錯。

+0

實際上你正確的「{'objType':'100','objID':'226','prevVoting':'」我在這裏做的是給它添加一些額外的值,像參數++投票+「','myvote':'」+ vote +「'}」, – 2010-10-22 10:48:54

+0

@Nishant:好的,沒關係,但對象內的字符串必須用雙引號括起來。你能編輯你的問題,並添加相應的行添加其他字符串? – 2010-10-22 10:52:01