我的表单上有一个名为txtName的文本框。
在我的页面中,我知道我需要将代码放在我的HEAD标签中,就像这样......
<script type='text/javascript' language="javascript">
document.FormName.txtName.value = "Robert";
</script>
但我似乎无法使用上面的代码......
为我的textbox txtName设置一个值答案 0 :(得分:5)
那是因为您的代码在创建DOM之前执行。 你可以做这样的事情
window.onload = function() {
document.forms['FormName'].elements['txtName'].value = "Robert";
}
或使用JQuery
$(function() {
document.forms['FormName'].elements['txtName'].value = "Robert";
// for a shorter syntax use id
$('#txtNameId').val("Robert");
}
答案 1 :(得分:1)
您的脚本在加载页面之前执行。使用onload事件
答案 2 :(得分:0)
您可以在文本框中设置ID吗?然后你可以使用getElementByID(“textboxid”);按ID选择更快。
更新: 您需要确保已加载DOM,以便脚本可以找到要更新的元素。一种方法是:
<body>
<form>
<input id="txtName" name="txtaaaName" type="text" value="notnow"/>
</form>
<script type="text/javascript">
function LoadTextBox(){
document.getElementById("txtName").value = "ready to go";
}
LoadTextBox();
</script>
</body>
替代方法可以是在body标签中使用onload的地方:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Untitled Document</title>
<script type="text/javascript">
function LoadTextBox(){
document.getElementById("txtName").value = "ready to go";
}
</script>
</head>
<body onload="LoadTextBox">
<form>
<input id="txtName" name="txtaaaName" type="text" value="notnow"/>
</form>
</body>