访问 javascript 中的隐藏值
accessing hidden value in javascript
我的 jsp 中有一个隐藏值:
<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 中的值是正确的,当我查看时,它显示:
<input type="hidden" name="user.strRegistered" value="yes">
只有旧的非标准版本的 IE(即 IE 6)允许您通过 name
属性和 document.getElementById
访问 html 标签(由 JQuery 的 $()
)。事实上,我什至可能记错了,因为 IE 6 可能甚至不允许你这样做。
对于任何符合标准的内容,您需要一个 id
属性才能使用 document.getElementById
:
<input type="hidden" id="user.strRegistered" name="user.strRegistered" value="yes">
现在的问题是如何让你的框架的 <html:hidden
给这个东西一个 id
属性....你没有标记你正在使用的框架,所以我可以'没法帮你。
补充 developerwjk 回复,因为我无法发表评论。
当您使用时:
$('user.strRegistered');
您正在尝试查找具有 css class strRegistered 的元素类型 "user"。
如果您使用:
$('#user.strRegistered');
您正在尝试查找 ID 为 "user" 且 css class strRegistered 的元素。 jQuery 选择器上的点 (.) 表示您想要一个具有特定 class 的元素。
如果您想在 jQuery 选择器上使用点 (.),请记住使用两个反斜杠将其转义。因此,您可以使用:
$('#user\.strRegistered');
我的 jsp 中有一个隐藏值:
<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 中的值是正确的,当我查看时,它显示:
<input type="hidden" name="user.strRegistered" value="yes">
只有旧的非标准版本的 IE(即 IE 6)允许您通过 name
属性和 document.getElementById
访问 html 标签(由 JQuery 的 $()
)。事实上,我什至可能记错了,因为 IE 6 可能甚至不允许你这样做。
对于任何符合标准的内容,您需要一个 id
属性才能使用 document.getElementById
:
<input type="hidden" id="user.strRegistered" name="user.strRegistered" value="yes">
现在的问题是如何让你的框架的 <html:hidden
给这个东西一个 id
属性....你没有标记你正在使用的框架,所以我可以'没法帮你。
补充 developerwjk 回复,因为我无法发表评论。
当您使用时:
$('user.strRegistered');
您正在尝试查找具有 css class strRegistered 的元素类型 "user"。
如果您使用:
$('#user.strRegistered');
您正在尝试查找 ID 为 "user" 且 css class strRegistered 的元素。 jQuery 选择器上的点 (.) 表示您想要一个具有特定 class 的元素。 如果您想在 jQuery 选择器上使用点 (.),请记住使用两个反斜杠将其转义。因此,您可以使用:
$('#user\.strRegistered');