如果我理解正确,您只需要将正确的值附加到输入字段。
如果我的解释是正确的,你有一个问题,因为功能addText不知道哪个按钮被点击。
一个非常糟糕的解决方案是给它一个等于按钮值的参数。例如
<input type="button" id="c-wedge" onClick="addtext('č');" value="č" />
它使您重复的值,我们都知道重复只是坏的。
更好的解决方案是有一个函数,它将知道是谁调用它。这可以通过将关键字this传递给函数来实现。
<input type="button" id="c-wedge" onClick="addtext(this);" value="č" />
function addtext(that) {
var nexttest = that.value;
document.myform.outputtext.value += newtext;
}
这是稍微好一点,因为知道只有一个函数处理所有按钮,但每个按钮的需求属性的onClick,所以它可以变得更好。如果Javascript只被放置在一个位置,那将会非常好。
如果您创建一个特殊股利,使之包含所有的按钮,没有别的,你可以做到以下几点:
document.getElementById('lut-btn').onclick = function (e) {
var dest = e.target;
document.myform.outputtext.value += dest.value;
};
这一点的代码片段试图找到DIV包含了所有的按钮和记录点击事件处理器。这是可行的,因为这个div内的任何元素都会触发一个click事件,这个事件将由注册函数处理。尽管您必须考虑到存在更好的注册事件处理程序的方法,您应该探索它们。
这绝不是一个完整的列表,但它应该是一个合适的起点。
完美!我使用了第一部分代码并修改了按钮以添加(this)。我可以告诉问题是什么,但不是正确的解决方案。 t̕igʷicidtidsyaʔyaʔ。谢谢,我的朋友。 – user2141419