我想獲得一個變量(當鏈接被點擊時設置)到一個函數並顯示爲彈出。如何獲得一個變量到一個函數?
如下所示的代碼:
$('a#link1').click(function(e){
e.preventDefault();
var value = 'true';
});
function exe(){
alert(value);
}
在執行功能時,所有我得到的是值爲undentified。
那麼,任何人都知道解決它的方法?
我想獲得一個變量(當鏈接被點擊時設置)到一個函數並顯示爲彈出。如何獲得一個變量到一個函數?
如下所示的代碼:
$('a#link1').click(function(e){
e.preventDefault();
var value = 'true';
});
function exe(){
alert(value);
}
在執行功能時,所有我得到的是值爲undentified。
那麼,任何人都知道解決它的方法?
變量具有範圍,您可以在onclick關閉範圍內定義value
變量,並且不會在其外部訪問變量。
下面將工作:
var value = false; //Define in the global scope
$('a#link1').click(function(e){
e.preventDefault();
value = false; //Use in a local-scope is legal.
});
function doSomething()
{
alert(value);
}
然而有許多全局變量會讓你的項目難以維持,而且還有其他的更清潔的解決方案。一般我會建議你閱讀編程合適的書雖然:)
只是使變量全球性的,或者更好的使用.data()
「附加」它的元素:
$('a#link1').click(function(e) {
e.preventDefault();
$(this).data("value", "true");
});
然後你可隨時查詢此:
function exe() {
alert($('a#link1').data("value"));
}
注意,它是在jQuery的1.2.3加猜測,現在它並不真正的問題雖然。
好的提示,謝謝你的幫助。 – sm21guy
var value; $('#link1')... {value = true; } - 如果您使用的是ID選擇器,則不需要指定元素名稱 – Irishka