我正在尝试在.php
文档中获取输入字段的值,并通过触发OnClick事件设置另一个输入字段。
这是我目前的代码
echo" <label onClick=\" document.getElementById(\"hiddenDescriptionField\").value = 'document.getElementById(\"descriptionField\").value'; ";
如何使用javascript从hiddenDescriptionField
设置descriptionField
?
答案 0 :(得分:2)
这应该这样做:
echo "<label onclick=\"document.getElementById('hiddenDescriptionField').value = document.getElementById('descriptionField').value; \"";
它应该是'onclick'而不是'onClick',你的引号也有点受损 - 我想我已经修好了。
答案 1 :(得分:2)
我建议将事件监听器设为非内联(假设您为<label>
添加了ID):
$my_script = <<<HIDDEN_DESC
<script>
var hidden = document.getElementById('hiddenDescriptionField'),
description = document.getElementById('descriptionField');
document.getElementById('my-label').addEventListener('click', function (e) {
hidden.value = description.value;
}, false);
</script>
HIDDEN_DESC;
(将此处设置为heredoc以适合您当前构建HTML的方法)。
答案 2 :(得分:1)
从那以后:
document.validateForm.hiddenDescriptionField.value = 'document.descriptionField.value'
也没有工作(你告诉JavaScript将值设置为引号之间的字符串),问题可能在于HTML元素的命名。你的名字hiddenDescriptionField是否正确?
除此之外,您还可以查看上面的代码框答案,JavaScript是caseSensitive,因此onclick将无效。 要测试它,请添加
alert('test');
代码,您可以轻松查看代码是否已执行。
答案 3 :(得分:1)
在HTML中,这应该有效:
<form>
<input id="hiddenDescriptionField"/>
<input id="descriptionField" value="My Field Value"/>
</form>
<label onclick="document.getElementById('hiddenDescriptionField').value = document.getElementById('descriptionField').value" >Click me</label>
您可以在此处尝试此代码:
我建议您使用JQuery访问DOM。