如何在javascript中比较equals’=’
我正在用javascript和HTML做一个计算器程序。 我有一个值为’=’的按钮。 在那个用户点击计算器中的“=”按钮时。 它应该开始评估他/她迄今为止给出的输入。 但是,当用户单击“=”按钮时,我试图比较这样
$(".calcinput").click(function () { var res = $(this).val(); if (res == '=') { //code to handle when '=' is pressed; } }
但它没有用,请帮助我。
你的代码足以处理事件..只需在comapre中添加一个额外的=
$(".calcinput").click(function () { var res = $(this).val(); //if (res == '=') { if (res === '=') { //code to handle when '=' is pressed; } });
接下来检查使用div
或button
或其他元素来表示button =
如果是button
则使用val()
来提取值
var res = $(this).val();
如果元素是div
那么它可以是innerHTML
或innerTEXT
var res = $(this).innerHTML; //Or var res = $(this).innerText;
您可以添加一行以检查是否获得了正确的element
值
var res = $(this).val(); alert(res);
如果按钮中有非空value
属性,也可以使用$(this).val()
HTML
JS
$(".calcinput").on('click',function(){ if($(this).val() === "="){ alert("equal"); } })
工作时尚
使用
$(this).text()
检索按钮文本而不是
$(this).val()
在你的代码中
=
是按钮元素的文本而不是值。 由于.val()
返回空字符串。 因此你需要在这里使用.text()
而不是.val
:
$(".calcinput").click(function () { var res = $(this).text(); if (res == '=') { //code to handle when '=' is pressed; } });
看看这个演示 。 我已经为ADD
Simillarly做了一个操作,你可以为所有操作做到这一点。保持简单
A
B $(".calcinput").click(function () { var res1 = $(".a").val(); var res2 = $(".b").val(); alert(parseFloat(res1) + parseFloat(res2)); });