我用只有JavaScript(jQuery的沒有)做了一個JSFiddle:
HTML
<input type="number" onkeyup="multiply(this)"/>
<input type="number" value="1" class="multiply-this"/>
<input type="number" value="2" class="multiply-this"/>
<input type="number" value="3" class="multiply-this"/>
<input type="number" value="4" class="multiply-this"/>
<input type="number" value="5" class="multiply-this"/>
<input type="number" value="6" class="multiply-this"/>
<input type="number" value="7" class="multiply-this"/>
的JavaScript
function multiply(first){
var value = +first.value;
var textboxes = document.getElementsByClassName("multiply-this");
for(var i = 0; i < textboxes.length; i++){
var textbox = textboxes[i];
if(textbox.attributes.initialValue){
textbox.value = textbox.attributes.initialValue.value;
} else {
textbox.setAttribute("initialValue", textbox.value);
}
textbox.value = +textbox.value * value;
}
}
window.onload = function(){
var textboxes = document.getElementsByClassName("multiply-this");
for(var i = 0; i < textboxes.length; i++){
var textbox = textboxes[i];
textbox.onkeyup = function(){
this.setAttribute("initialValue", this.value);
}
}
}
我添加的功能記住文本框曾在第一次什麼樣的價值。但是如果您專門更改了七個相乘的文本框中的一個,您仍然可以更改它。
編輯
您還可以,如果你希望它改變的一個值後,乘補充一點:
textbox.onblur = function(){
multiply(document.getElementById("multiplyer"));
}
JSFiddle
設置在其他7類文本框,並在你的函數中遍歷它們。 – Arg0n