访问 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');