我有一个简单的计算器,可以改变输入以将美元转换为越南盾。它工作正常,除了输入一个数字然后通过退格键移除后," 0.00"保留在执行计算的框中。我希望在删除数字后,当另一个框为空时,该框为空白。
这是我的Javascript:
function vndCalc() {
var cusd = document.getElementById("usd").value;
var cvnd = document.getElementById("vnd");
var calc = cusd * 22477.50;
cvnd.value = calc.toFixed(2);
}
function usdCalc() {
var cusd = document.getElementById("usd");
var cvnd = document.getElementById("vnd").value;
var calc = cvnd / 22477.50;
cusd.value = calc.toFixed(2);
}
以下是HTML:
<fieldset id=calculator>
<legend>USD to VND Calculator</legend>
<label>US Dollars:<input type="text" id="usd" oninput="vndCalc()"/></label>
<label>VN Dongs:<input type="text" id="vnd" oninput="usdCalc()"/></label>
</fieldset>
我试过和#34;如果&#34;功能,但我无法工作。请帮忙!
答案 0 :(得分:0)
您可以检查输入字段是否==&#34;&#34;并将输出字段设置为相同
来自美元
cvnd.value = cusd == "" ? "" : calc.toFixed(2);
和美元
cusd.value = cvnd == "" ? "" : calc.toFixed(2);
如果你不喜欢你可以做的三元形式
来自美元
if (cusd == "") {
cvnd.value = "";
} else {
cvnd.value = calc.toFixed(2);
}
和美元
if (cvnd == "") {
cusd.value = "";
} else {
cusd.value = calc.toFixed(2);
}
答案 1 :(得分:0)
您可以使用条件控制其他输入。例如,你可以试试这个:
function usdCalc() {
var cusd = document.getElementById("usd");
var cvnd = document.getElementById("vnd").value;
var calc = cvnd / 22477.50;
if (cvnd == ''){
cusd.value = '';
} else {
cusd.value = calc.toFixed(2);
}
}
答案 2 :(得分:0)
我个人会添加2个按钮来触发转换。 Jsfiddle。 例如:
var exchangeRate = 22477.50,
usdSelector = $('#usd'),
vndSelector = $('#vnd');
$('#convert1').click(function(){
vndSelector.val(usdSelector.val() * exchangeRate);
})
$('#convert2').click(function(){
usdSelector.val(vndSelector.val() / exchangeRate);
})
$('#clear').click(function(){
usdSelector.val("");
vndSelector.val("");
})
和Html:
<fieldset id="calculator">
<legend>USD to VND Calculator</legend>
<label>US Dollars: <input type="text" id="usd"/></label>
<label>VN Dongs: <input type="text" id="vnd"/></label>
</br>
<button id="convert1">Convert Dollars to Dongs</button>
<button id="convert2">Convert Dongs to Dollars</button>
<button id="clear">Clear</button>
</fieldset>