无法使用我的功能,并在用户点击时将按钮的值添加到文本字段中。
<form name="testing" action="test.php" method="get">Chords:
<textarea name="field"></textarea>
<input type="button" value="G" onClick="addToField('G');">
<input type="button" value="C" onClick="addToField('C');">
<input type="button" value="Am" onClick="addToField('Am');">
<input type="button" value="F" onClick="addToField('F');">
<script language="javascript" type="text/javascript">
function addToField(crd){
document.testing.field.value += crd;
}
</script>
真的试图理解这里的错误。
希望这能说明我想要实现的目标:https://jsfiddle.net/034hyjo2/6/
答案 0 :(得分:2)
您正在错误地访问该对象
<script language="javascript" type="text/javascript">
function addToField(crd){
document.getElementByName("testing").value += crd;
}
</script>
或者,给元素一个ID并使用getElementByID(“testing”)。value。 我通常发现无论如何都会更好......
答案 1 :(得分:2)
如果您只是将其放入小提琴中,则可以将脚本标记放在HTML上方:
<script>
var addToField = function(c) {
document.testing.field.value += c;
};
</script>
<form name="testing" action="test.php" method="get">Chords:
<textarea name="field"> </textarea>
<input type="button" value="G" onClick="addToField('G');">
<input type="button" value="C" onClick="addToField('C');">
<input type="button" value="Am" onClick="addToField('Am');">
<input type="button" value="F" onClick="addToField('F');">
</form>
答案 2 :(得分:0)
你的JSFiddle是错误的。你这里的问题更好。您希望使用document.getElementById('field').value += crd;
代替document.testing.field.value += crd;
试试这个:
<form name="testing" action="test.php" method="get">Chords:
<textarea id="field" name="field"> </textarea> ---note the addition of the ID parameter
<input type="button" value="G" onClick="AddToField('G');">
<input type="button" value="C" onClick="AddToField('C');">
<input type="button" value="Am" onClick="AddToField('Am');">
<input type="button" value="F" onClick="AddToField('F');">
</form>
<script>
function AddToField(c) {
document.getElementById('field').value += c;
};
</script>
函数也不应该是camelCase而是Pascal case;)