我想通過在屏幕上添加單擊的跨度值來計算用戶定義的公式(基本計算器)。 當我想使用Jquery.GlobalEval進行評估時,似乎沒有任何事情發生。爲什麼Jquery.globalEval不能正常工作?
這裏是我的html代碼:
<div class="screen"></div>
<div class="keys">
<!-- operators and other keys -->
<span>7</span>
<span>8</span>
<span>9</span>
<span>+</span>
<span>4</span>
<span>5</span>
<span>6</span>
<span>-</span>
<span>1</span>
<span>2</span>
<span>3</span>
<span>/</span>
<span>0</span>
<span>.</span>
<span class="eval">=</span>
<span>x</span>
</div>
</div>
這裏是我的jQuery代碼:
jQuery(function() {
// when C is clicked
$(".clear").click(empty);
var key;
//any of the keys is clicked
$(".keys span").not(".eval").click(function() {
//======================
if($(this).not(".eval")) {
$('.screen').append($(this).html());
}
key = $('.screen').text().replace(/x/g, '*').replace('=', '');
});
$(".eval").click(function() {
alert(calculate());
});
function empty() {
$(".screen").empty();
}
function calculate() {
jQuery.globalEval("var result = "+ key + ";");
}
});
謝謝
什麼是錯誤訊息?請注意,您的警報將始終顯示「未定義」,因爲您沒有從'calculate()'返回任何內容。 – Teemu
@Teemu它不會給我一個錯誤消息,我會編輯澄清。它只是沒有做任何事情 – abedzantout
@Teemu是它給了我未定義的時候,我把計算中的返回語句。 – abedzantout