如果启用了java,我正在编写一个简单的脚本来传递值“... php?answer = 1”。我到目前为止......
<script language="text/javascript">
document.form.answer.value=1;
</script>
</head>
<body>
<form name="form" action="enabled_catch.php" method="get">
<input type="hidden" name="answer">
<input type="submit" value="click me">
</form>
...但是脚本似乎没有分配answer.value =“1” - 我不知道为什么。你能帮忙吗
答案 0 :(得分:8)
这是因为当您使用javascript分配此值时(不要与Java混淆),DOM尚未加载且表单不存在。试试这个:
<script type="text/javascript">
window.onload = function() {
document.form.answer.value = '1';
};
</script>
或者更好地为您的输入分配ID并使用此ID:
<head>
<script type="text/javascript">
window.onload = function() {
document.getElementById('answer').value = '1';
};
</script>
</head>
<body>
<form name="form" action="enabled_catch.php" method="get">
<input type="hidden" id="answer" name="answer" />
<input type="submit" value="click me" />
</form>
</body>
甚至更好地使用javascript框架jQuery来操纵DOM以确保跨浏览器兼容性:
<script type="text/javascript">
$(function() {
$(':hidden[name=answer]').val('1');
});
</script>