2015-01-09 37 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属性....你没标记你正在使用的框架,所以我不能帮你。