我有一个带有一个输入元素的表单,它通过post从最后一页获取其值, 像这样:
<form action="http://localhost/maps_en2/next-page" method="POST">
<input name="srchZoom" type="hidden" value="<?php if( isset($_POST['srchZoom']) ) echo $_POST['srchZoom']; ?>">
<input type="submit" class="buttonForLink" value="next page"/> |
</form>
此表单旨在作为链接。
我需要能够在mapIdle事件之后更改元素的值,然后在命中链接时,将新值发布到下一页。
所以我这样做:
function mapIdle(){
document.getElementsByName("srchZoom").innerHTML = map.getZoom();
}
我chechked确实在mapIdle事件之后,元素的值发生了变化 我点击了一个触发此按钮的按钮检查了它:
alert(document.getElementsByName("srchZoom").innerHTML);
问题在于,当点击链接时,表单会发布元素的原始值而不是函数mapIdle()
设置的值。
答案 0 :(得分:0)
我认为你应该使用“value”而不是“innerHTML”:
function mapIdle(){
document.getElementsByName("srchZoom").value = map.getZoom();
}
答案 1 :(得分:0)
document.getElementsByName("srchZoom")
返回数组(getElements - 复数)。因此,使用document.getElementsByName(“srchZoom”)。innerHTML,您将属性innerHTML添加到该数组。你应该把它改成
document.getElementsByName("srchZoom")[0].value = map.getZoom();
更改名为 srchZoom 的第一个元素的值。