簡體   English   中英

如何將參數傳遞給<span>標簽</span>上的 jQuery.click() 函數<span>?</span>

[英]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 上復制了該應用程序的代碼:

Codepen 天氣應用

我感謝您的幫助!

看起來你應該嘗試這樣的事情:

$(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 處運行該函數,但不會在單擊時運行。

示例 - 單擊時沒有括號

示例 2 - 點擊括號

那么你應該為函數提供一個主體:)

$("#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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM