2015-01-09 63 views
0

我在我的JSP中有一個隱藏的價值:訪問隱藏價值在JavaScript

<html:hidden property="user.strRegistered" value="user.strRegistered"/> 

我怎樣才能訪問它在我的JS文件?我有:

var regChk = $('[name="user.strRegistered"]'); 
alert(regChk); 

但這不起作用。我也試過這兩種:

var regChk = $('user.strRegistered'); 
alert($('#user.strRegistered').val()); 

但它們都是未定義的。

在HTML中的值是正確的,雖然,當我看,它表明:IE的

<input type="hidden" name="user.strRegistered" value="yes"> 
+3

第一個應該工作。你記得'document.ready'等。 – adeneo 2015-01-09 19:18:57

+0

a)adeneo說什麼 b)你也可以使用alert(document.getElementById('YOUR hidden field id')。 – Quantico 2015-01-09 19:19:21

+0

順便說一下'alert'中會出現什麼? – 2015-01-09 19:21:29

回答

1

補充developerwjk響應,因爲我無法評論。

當你使用:

$('user.strRegistered'); 

你正在努力尋找一種元素「用戶」與CSS類strRegistered的。

如果你使用:

$('#user.strRegistered'); 

你正在努力尋找ID爲 「用戶」 和CSS類strRegistered的元素。 jQuery選擇器上的點(。)表示您想要一個具有某個類的元素。 如果你想在jQuery選擇器上使用點(。),記得用兩個反斜槓來轉義它。因此,對於你的工作,你會使用:

$('#user\\.strRegistered'); 
+0

謝謝!就是這樣。 。 。我需要它是var regChk = $('[name =「user.strRegistered」]')。val(); – sharcfinz 2015-01-09 20:43:19

0

只有老非標準版本(即IE 6)讓你通過name屬性訪問HTML標籤與document.getElementById(由JQuery的$()在幕後使用)。事實上,我甚至可能記得這個錯誤,因爲IE 6甚至可能不會讓你這樣做。

對於任何符合標準,你需要一個id屬性使用document.getElementById

<input type="hidden" id="user.strRegistered" name="user.strRegistered" value="yes"> 

現在的問題是如何讓你的框架的<html:hidden給這件事情的id屬性....你沒標記你正在使用的框架,所以我不能幫你。