我需要什么
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文件。
我已经使用了隐藏元素。
欢迎提出任何建议。
答案 0 :(得分:1)
你的html元素没有id。因此,您无法使用document.getElementById
进行选择。如果要解决此问题,则必须添加此id
,如下所示:
<input type="hidden" name="mobilepage" id="mobilepage" value=""/>
如果您不想添加id
,并且希望保留此元素,则应使用其他方法选择元素document.getElementByName
。
下面我添加了一个代码段,看它是否有效。
alert(document.getElementById("mobilepage").value);
&#13;
<input type="hidden" name="mobilepage" id="mobilepage" value="3"/>
&#13;
答案 1 :(得分:0)
当您按名称获取该元素时,您正在尝试按ID获取元素。 做:
var mobile=document.getElementByName("mobilepage").value;
或者,或者将名称更改为HTML元素上的ID:
<input type="hidden" id="mobilepage" value=""/>
答案 2 :(得分:0)
为您的输入添加id属性。