使用javascript函数设置HTML文本框值?
我使用此代码使用Javascript函数设置HTML文本框值。但它似乎不起作用。有人能指出这个代码有什么问题吗使用javascript函数设置HTML文本框值?,javascript,android,html,Javascript,Android,Html,我使用此代码使用Javascript函数设置HTML文本框值。但它似乎不起作用。有人能指出这个代码有什么问题吗 Whats your Name? <input id="name" value="" /> <script type="text/javascript"> function setValue(value){ var myValue=value; document.getElementsById("name").value = myValue; } </
Whats your Name?
<input id="name" value="" />
<script type="text/javascript">
function setValue(value){
var myValue=value;
document.getElementsById("name").value = myValue;
}
</script>
您没有将函数链接到任何东西。例如,单击:
<input id="name" value="" onclick="javascript:this.value=12;"/>
替换所需函数的onclick属性,不管它做什么(需要更具体)
此外,没有语言属性(至少现在没有了),而是使用type=“text/javascript”
这是一把小提琴:
单击输入以查看其工作情况
看这第二把小提琴
将hid输入中定义的内容加载到名称输入
function setValue(value) {
var myValue=value; //unnecessary
document.getElementById("name").value= myValue;
}
但是,正如注释中指出的,您需要在代码中的某个地方调用setValue(value)。现在,您刚刚定义了从未调用的函数。您使用的是
document.getElementsById(“name”)
它应该是document.getElementById(“name”)
不是
元素
它是元素
您可以通过其名称访问元素的值:
document.getElementsByName("textbox1"); // returns a list of elements with name="textbox1"
document.getElementsByName("textbox1")[0] // returns the first element in DOM with name="textbox1"
因此:
或者为元素分配一个ID,然后标识该元素,然后可以使用getElementById访问该元素:
<input name="textbox1" id="textbox1" type="text" />
<input name="buttonExecute" onclick="execute(document.getElementById('textbox1').value)" type="button" value="Execute" />
首先,您的javascript函数有一个输入错误,即您使用了
getElementsById
而不是getElementById
要设置页面加载时文本框的值,我建议您使用另一种方法
<body onload="setValue('yourValueToSet');">
<!-- Your usual html code in the html file -->
</body>
我认为您缺少引号 试试看
也要考虑键入。
< P>这不是元素。 这是一种元素 您应该使用document.getElementById('object-id')代码>请查看以下内容:
<body onload="setvalue($value);">
Whats your Name?<input id="name" name="name" value=""/>
<script type="text/javascript">
function setValue(value){
document.{formname}.name.value = value;}</script>
你叫什么名字?
函数设置值(值){
文档。{formname}.name.value=value;}
document.getElementsByName(“name”).value=value
在\“Javascript\”>
之后的额外“
”(以及反斜杠)是什么意思?首先,您将传递给函数的值存储在一个var中(不必要),然后尝试用DOM元素的值覆盖它,不再执行任何操作。我说了“try”因为返回的是一个而不是DOM元素,更不用说您没有任何具有该名称的元素了。改用getElementById
。此外,您从未调用过该函数。如果你明确地告诉我们你希望你的函数做什么,那就更好了。看起来你的赋值被颠倒了。你有一个拼写错误getElementsById
应该是getElementById
(不带额外的s)。此外,该函数从未调用过。如果不使用按钮,我如何调用它?@user1570222我从未使用过Android(我计划使用,但我现在一个都不知道)看到我更新到答案的链接,希望它有帮助,正如我所说,你需要从某处调用该函数。上一堂javascript@user1570222的课好吧,你到底需要什么?当页面加载时执行它?@user1570222您从哪里获取函数的输入?示例中的myValue.myValue=value。“value”来自我的android java类。我如何不用按钮调用它?你可以使用按钮/链接/或者在页面加载时调用函数。取决于您希望何时填充该框。您希望什么时候发生这种情况?我将其编辑到web.loadUrl(“javascript:setValue(““+value+”)”);仍然未定义我不确定是否缺少web.loadUrl(“file:///android_asset/www/webpage");
或尝试web.loadUrl(“javascript:setValue(\“”+value+“\”))代码>我已经像你说的那样更改了它,但仍然无法详细说明你的答案。比如提供代码或文档等。
<body onload="setValue('yourValueToSet');">
<!-- Your usual html code in the html file -->
</body>
web.loadUrl("javascript:setValue('"+ value +"')");
<body onload="setvalue($value);">
Whats your Name?<input id="name" name="name" value=""/>
<script type="text/javascript">
function setValue(value){
document.{formname}.name.value = value;}</script>