【问题标题】:Button not working - Uncaught TypeError: Cannot read property 'value' of null按钮不起作用 - 未捕获的类型错误:无法读取 null 的属性“值”
【发布时间】:2015-01-29 15:30:25
【问题描述】:

我发现不同浏览器上的按钮兼容性。它只在 Internet Explorer 中工作,如果我在任何其他浏览器(如 chrome、Firefox)中单击该按钮,则没有响应

Chrome 控制台显示以下错误, " 未捕获的类型错误:无法读取 null 的属性“值” -doQuery -点击”

这里是代码:

function doQuery(){
	var Key = document.getElementById('searchObj.Key').value;
	}
<input type="text" name="searchObj.Key" maxlength="6" size="12" value="" class="textbox">


<input type="button" class="btn_c" name="btnf8" value="Go" onclick="doQuery()">

感谢您的帮助。

【问题讨论】:

  • 顾名思义,getElementById() 方法通过id 属性获取元素,而不是name 属性。 searchObj.Key 是您输入的名称
  • 你似乎没有id'searchObj.Key' 的元素。
  • 工作选择是document.getElementsByName("searchObj.Key")[0].value
  • @mplungjan 当然,假设 input 是页面上第一次出现以 searchObj.Key 为名称的页面。
  • 我个人对这在 MSIE 中有效这一事实感到非常兴奋(竖起大拇指)

标签: javascript google-chrome internet-explorer browser


【解决方案1】:

避免对命名元素“....”或 id 值“...”使用点表示法(我还认为带有 . 或其他特殊字符的 id 属性值无效。)

document.forms[0].searchObj.Key.value;

返回未定义

document.forms[0]["searchObj.Key"].value;

【讨论】:

  • 更多的是评论而不是答案,不是吗?
猜你喜欢
  • 2021-12-01
  • 2015-04-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-18
  • 2021-11-18
相关资源
最近更新 更多