我尝试通过网址运行javascript代码来更改页面中表单的值。 这是HTML页面的内容。
<html>
<body>
<form method='post'>
Name: <input type='text' id='name' value='' /><br />
Family: <input type='text' id='family' value='' /><br />
Email: <input type='text' id='email' value='' /><br />
<input type='submit' value='Submit' /><br />
</form>
</body>
</html>
现在,我在chrome的URL部分输入以下值:
javascript:document.getElementById('name').value = 'string1';
我的整个页面将变为空白,只有值#34; string1&#34;将显示在页面中。 但是,运行以下代码可以正常工作:
javascript:document.getElementById('name').value = 1;
它会将name字段的值更改为1。 我想知道造成这个问题的原因。
注意:这项工作的目的是将代码注入android中的webview。
感谢任何建议。
答案 0 :(得分:0)
试试这个。
rscvn
坚持'未定义;'到任何返回字符串的脚本。
答案 1 :(得分:-1)
这是因为您在属性值
之后使用单引号value=''
并且您使用
在javascript中更改了它的值document.getElementById('name').value='string1';
所以html变成了
<input type='text' id='name' value=''string1''
您可以使用
修复它value=""
或使用
document.getElementById('name').value="string1";
答案 2 :(得分:-1)
我尝试了下面的代码
<html>
<body>
<form method='post'>
Name: <input type='text' id='name' value='' /><br />
Family: <input type='text' id='family' value='' /><br />
Email: <input type='text' id='email' value='' /><br />
<input type='submit' value='Submit' /><br />
</form>
<button onclick="change()">Click me</button>
<script>
function change(){
var obj=document.getElementById('name');
obj.value="string1";
}
</script>
</body>
</html>
它在你的脚本中运行得很好 你创建了一个函数来更改值或只是将代码放在像这样的脚本标记
<script>document.getElementById('name').value="String1";<script>