我在IE中使用以下JavaScript,但在Chrome和Firefox上没有。 这是代码:
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery('#applicationSelect').change(function() {
document.getElementById('dropdown').value = "APPLICATION";
});
});
</script>
<input type="hidden" name="dropdown" value="" />
当我查看Firebug时,代码出错了:
document.getElementById("dropdown") is null
document.getElementById('dropdown').value = "APPLICATION";
我需要你的建议。提前谢谢。
答案 0 :(得分:5)
如果您已经使用jQuery,为什么不使用它来设置输入值:
$('#dropdown').val('APPLICATION');
正如其他人所说,您的输入id
不是'下拉'。
另请注意,在大多数用例中,可以使用$
代替jQuery
。
答案 1 :(得分:3)
问题是您的input
元素没有id
!将name
更改为id
,或添加id
:
<input type="hidden" name="dropdown" id="dropdown" value="" />
或者,如果您不想添加id
,可以使用getElementsByName
(doesn't work very well跨浏览器),或者您可以使用jQuery属性选择器:< / p>
$("input[name='dropdown']").val("APPLICATION");
<强>更新强>
我刚注意到你在问题中说它在IE中工作。这意味着您必须使用相当旧版本的IE,因为IE7及以下版本中的getElementById
错误地选择了name
以及id
的元素。