在 javascript 中访问 js 变量时无法读取 null 的属性“value”
2015-01-14
1271
我需要什么
- 我需要将 url 变量从 html 传递到 javascript 文件。
html 代码
<script>
var p = "{{ page_param.asy_request | replace('&','&')}}";
p = p.replace(/\&/g, "&");
p = "{{ DomainDetect() }}/ajax?for=event_listing&ajax=1" + p;
</script>
<input type="hidden" name="mobilepage" id="mobilepage" value="'+p+'"/>
在 javascript 代码中访问 p 变量
var mobile=document.getElementById("mobilepage").value;
console.log(mobile);
错误
Uncaught TypeError: Cannot read property 'value' of null
-
我需要将 url 从 html 文件传递​​到 js 文件。
-
我已经为此使用了隐藏元素。
-
欢迎提出任何建议。
3个回答
您的 html 元素没有 id。因此您无法使用
document.getElementById
进行选择。如果您想修复此问题,您必须添加此
id
,如下所示:
<input type="hidden" name="mobilepage" id="mobilepage" value=""/>
如果您不想添加
id
并且想要保留此元素,则应使用另一种方法选择您的元素,即
document.getElementByName
。
下面我添加了一个代码片段以查看它是否有效。
alert(document.getElementById("mobilepage").value);
<input type="hidden" name="mobilepage" id="mobilepage" value="3"/>
Christos
2015-01-14
您尝试通过 ID 获取元素,但实际上应该通过名称获取该元素。 请执行以下操作:
var mobile=document.getElementByName("mobilepage").value;
或者,将名称更改为 HTML 元素上的 ID:
<input type="hidden" id="mobilepage" value=""/>
Omri Aharon
2015-01-14
向您的输入添加 id 属性。
Ankit K
2015-01-14