2010-08-24 114 views
0
$(document).ready(function() { 
doSomething(1);  
$('#pp').click(doSomething(2));//why is this called?? I didn't click the button.. 
}); 

function doSomething(v) { 
alert(v); 
} 
</script> 

<body> 

<input type="button" id="pp" value="asdf" /> 

我需要一個函數來加載和點擊。但不知何故doSomething()被稱爲加載兩次。這是怎麼回事..??爲什麼我的函數被調用兩次?

+2

參見:http://stackoverflow.com/questions/2316158/jquery-how-do-you-pass-this-as-函數參數/ 2316194#2316194 – deceze 2010-08-24 04:52:31

+0

謝謝大家回答我的問題,真的。 – Deckard 2010-08-24 04:59:11

回答

2

變化的準備片段

$(document).ready(function() { 
    doSomething(1); 
    $('#pp').click(function() { 
    doSomething(2); 
    }); 
}); 
0
$(document).ready(function() { 
doSomething(1);  
$('#pp').click(function(){doSomething(2);}); 
}); 
0

你需要用你傳遞什麼.click()function {}。否則它執行.click()行執行和結果傳遞給.click()

0

我認爲你的事件綁定有錯誤。它應該是:

$('#pp').bind('click', function() { doSomething(2); }); 
相關問題