[英]How do I pass parameters into a jQuery.click() function on a <span> tag?
我過去曾使用 jQuery.click() 函數與按鈕一起使用,但除了成功之外一無所有,但我嘗試使用它來單擊<span>
並且它不起作用。
我還注意到它會自動執行我的功能而不聽點擊。
判斷我如何在按鈕上使用它,這將是語法:
<p><span id="example">Click Here</span></p>
$("#example").click(exampleFunction(p1, p2));
但它似乎不起作用。 同樣,它只是執行它,甚至沒有點擊。 我什至試過:
$(document).on("click", "#example", exampleFunction(p1, p2));
仍然沒有運氣,同樣的結果。
我正在制作一個天氣應用程序,我的目標是通過單擊單位在華氏度和攝氏度之間切換溫度。 我在 codepen.io 上復制了該應用程序的代碼:
我感謝您的幫助!
看起來你應該嘗試這樣的事情:
$(document).on("click", "#example", function() {
console.log('Hello World');
});
單獨使用function()
定義會給我Uncaught SyntaxError: Unexpected token (
.
您正在做的是將匿名函數綁定到點擊。 如果您這樣做有點不同,比如MyFunction()
,那么它只會執行該函數。
如果你有MyFunction
你仍然可以像這樣使用 click 來觸發它:
function MyFunction() {
console.log('Hurra!')
}
$('#example').click(MyFunction)
請注意,我沒有使用括號,否則它將實際運行該函數而不是綁定它。
像這樣嘗試:
$('#example').click(bleepme); function bleepme(){ alert('hi'); }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <p><span id="example">Click Here</span></p>
請注意,對 bleepme 函數的單擊調用沒有括號——如果您將括號放在那里,它將在 document.ready 處運行該函數,但不會在單擊時運行。
那么你應該為函數提供一個主體:)
$("#example").click(function() {
alert('clicked');
});
我不認為您真的想將參數傳遞給函數。 當有人點擊溫度來切換單位時,document.ready 函數已經執行完畢。 您實際上想從 DOM 或本地存儲中讀取 temp 和 units 的值。 因此,您不需要將參數傳遞到您的函數中,這應該會使事情變得更容易一些。
我認為你的代碼需要像這樣工作
$(document).ready(function(){
$('#example').on('click',function(){
// Some of your logic here
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.