javascript无法获取属性';价值';指未定义的或空的引用

javascript无法获取属性';价值';指未定义的或空的引用,javascript,Javascript,我有下面的代码,java脚本抛出错误“无法获取未定义或空引用的属性'value'。我做错了什么?下面是我试图执行以验证一个输入字段的示例代码 <html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <meta content="text/html;charset=iso-8859-2" http-equ

我有下面的代码,java脚本抛出错误“无法获取未定义或空引用的属性'value'。我做错了什么?下面是我试图执行以验证一个输入字段的示例代码

<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <meta content="text/html;charset=iso-8859-2" http-equiv="content-type" />

<script type="text/javascript">
 function validate_frm_new_user_request()
{
    alert('test');
    valid = true;

    if ( document.frm_new_user_request.u_isid.value == '' )
    {
        alert ( "Please enter your valid ISID Information." );
        document.frm_new_user_request.u_isid.focus();
        valid = false;
    }
return valid;   
</script>
</head>
<body
<form method="post" action="" name='frm_new_user_request' id="frm_new_user_request" onsubmit="return validate_frm_new_user_request();">
<center>
<table>
    <tbody>

        <tr align="left">
            <td><Label>ISID<em>*:</Label><input maxlength="15" id="u_userid" name="u_userid" size="20" type="text"/></td>
            <td>

<tr>
            <td align="center" colspan="4">
                <input type="image" src="images/button/btn_create_request.gif" border="0" ALT="Create New Request">

                </td>
        </tr>
    </table>
</form>
</body>
</html>

函数验证\u frm\u新用户\u请求()
{
警报(“测试”);
有效=真;
if(document.frm\u new\u user\u request.u\u isid.value==“”)
{
警报(“请输入有效的ISID信息”);
document.frm_new_user_request.u_isid.focus();
有效=错误;
}
返回有效;

您不能像以前那样访问元素(
document.frm\u new\u user\u request
)。您必须使用以下功能:

document.getElementById(“frm\U新用户请求”)

因此,从输入中获取值可能如下所示:

var value=document.getElementById(“frm\U新用户请求”).value

此外,您还可以使用一些JavaScript框架,例如,它简化了DOM(文档对象模型)的操作,还隐藏了各种浏览器之间的差异

使用jQuery从输入中获取值如下所示:

  • 使用ID“元素”输入:
    var value=$(“#元素).value
  • 使用“元素”输入:
    var值=$(.element)。值

    • 问题在于你如何尝试获得价值。比如

      if ( document.frm_new_user_request.u_isid.value == '' )
      
      不起作用。您需要首先找到要获取值的元素。它不像服务器端语言,您可以在其中键入对象的引用名称和句点以获取或分配值

      document.getElementById('[id goes here]').value;
      
      可以。注意:JavaScript区分大小写

      我建议使用:

      var variablename = document.getElementById('[id goes here]');
      


      您有许多HTML和java脚本错误,包括: 标签,使用非UTF-8编码进行表单提交,无需,。。。 必须使用
      document.forms.FORMNAME
      document.forms[0]
      作为页面中第一个出现的表单 更正:

      函数验证\u frm\u新用户\u请求()
      {
      警报(“测试”);
      var valid=true;
      if(document.forms.frm_new_user_request.u_userid.value==“”)
      {
      警报(“请输入有效的ISID信息”);
      document.forms.frm_new_user_request.u_userid.focus();
      有效=错误;
      log(“FALSE::空值”);
      }
      返回有效;
      }
      
      ISID*:
      
      document.frm\u new\u user\u request.u\u isid
      正在返回
      未定义的
      -调用
      未定义的
      上的value
      将抛出错误。我没有看到其中有
      u\u isid
      的元素。抱歉,我重命名了输入名称,并且没有意识到。在这种情况下,我如何在ja中的下一个语句中忽略它vascript?
      var variablename = document.getElementById('[id goes here]').value;