我想用jQuery爲div元素設置永久值;如何在jQuery中設置永久值
完整的js文件:
$(function() {
var $a;
var $b;
$('button').click(function() {
$a = $('#a').val();
$b = $('#b').val();
var $big = getBigger($b, $a);
var $small = getSmaller($b, $a);
$('#bigger').text($big);
$('#smaller').text($small);
});
});
//a simple function for getting a bigger element
function getBigger(a, b) {
return a^(a^b) & -(a < b);
}
//a simple function for getting a smaller element
function getSmaller(a, b) {
return (a < b) ? a : b;
}
完整的HTML文件:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<link rel="stylesheet" type="text/css" href="style/style.css">
<title>Compare</title>
</head>
<body>
<form>
Enter a: <input type="number" id="a"><br/>
Enter b: <input type="number" id="b"><br/>
<button> Compare</button>
<div id="bigger"></div>
<div id="smaller"> </div>
</form>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script src="js/app.js"></script>
</body>
</html>
的問題是,當我離開的範圍變量被破壞
PS。現在我意識到我的錯誤是,當在form
元素中添加<button>
時,每次按下該按鈕時,表單中的數據都會被重新設置。
變量'$ big'是綁定在你的碼。此外,當您設置元素的文本時,即使原始變量超出範圍,該文本仍然保留。你的情況正在發生。 –
如果通過未綁定,你的意思是未聲明,我已經在文件的開頭聲明瞭它,當.text()方法被設置在這個範圍之外時,我會收到一個永久值。 – murloc
看起來像別的東西是你的點擊處理程序運行後覆蓋div的文本。你可以在[MCVE](http://stackoverflow.com/help/mcve)中重現問題嗎? –