如何在HTML中更改表单元素值

时间:2010-07-19 07:41:31

标签: javascript html dom

我有这段简单的代码。

<html>
<head>

  <script type="text/javascript">
    function changeText()
    {
       var form = document.forms['detail'];
       form.desc.value="success";
    }
  </script>
</head>
<body>
  <form name="detail">
    <input type="text" name="desc" id="desc" >
    <input type="submit" value="changetext" onClick=changeText()>
  </form>
</body>
</html>

当我在Mozilla浏览器中运行时,名为“desc”的文本框的值会发生变化但会立即消失...即它不会永久显示并变为空。

我该如何解决?

此致 维杰

5 个答案:

答案 0 :(得分:3)

尝试使用:

<input type="submit" value="changetext" onClick="changeText(); return false;">

看起来您的网页令人耳目一新,这可能就是您的字段文字消失的原因。如果您的onClick侦听器返回false,则会阻止此默认行为。

答案 1 :(得分:1)

你可以给该文本框一个id

然后运行document.getElementById(“textboxid”)。value =“success”;

适用于所有浏览器

答案 2 :(得分:0)

单击键入为"submit"的按钮后,表单将被提交 - 页面将重新加载。

false方法返回changeText()并将onClick=changeText()更改为onClick="return changeText();",以防止提交表单。

或者,您可以将按钮类型从"submit"更改为"button"以阻止提交。然后你必须添加另一个提交按钮(即使返回false也需要你找到另一种提交表单的方式)。

答案 3 :(得分:0)

<input type="text" name="txt" id="txt" value="Name" onblur="if(this.value.length == 0) this.value='Name';" onclick="if(this.value == 'Name') this.value='';" />

答案 4 :(得分:0)

  家伙schaller

document.getElementById(“textboxid”)。value =“success”;

是个好主意!

  

维贾雅库马尔正

尝试保存var form = document.forms ['detail'];在一个隐藏的输入!那么你将始终能够访问表单数据..