我想使用jQuery构建一系列六个按钮,其值为A,B,C,1,2,3。每次用户单击按钮时,其值都会附加到文本字段。但是,用户必须不能连续添加两个字母或两个数字。因此,如果按下A,B或C,则只有数字应该有效,反之亦然。
答案 0 :(得分:0)
这应该这样做:
function createButton(target, val, fn) {
var btn = document.createElement("button");
btn.value = val;
btn.onclick = function() {
fn(val);
};
target.appendChild(btn);
}
var state = null,
values = [];
function addLetter(l) {
if (state == "letter") return false;
state = "letter";
values.push(l);
update();
}
function addNumber(n) {
if (state == "number") return false;
state = "number";
values.push(n);
update();
}
createButton(inputs, "A", addLetter);
createButton(inputs, "B", addLetter);
createButton(inputs, "C", addLetter);
createButton(inputs, 1, addNumber);
createButton(inputs, 2, addNumber);
createButton(inputs, 3, addNumber);
function update() {
// do something with values
}