簡體   English   中英

如何在jQuery方法中使用“或”條件?

[英]How to use 'or' condition in method of jQuery?

假設我有以下代碼。

代碼01

$("#abc").click(function(){
    //My Code
});

代碼02

$("#def").change(function(){
    //My Code
});

我必須運行相同的代碼#abc單擊或#def更改。 所以目前我已經浪費時間在兩個地方編寫相同的代碼。

我知道可以重用相同的代碼,創建一個通用函數並對其進行調用。

有什么jQuery方法可以解決我的問題。

我的意思是跟隨。

(`#abc` click or `#def` change){
 //Do this
}

你能做的最好的就是

var todo = function() {
   //something
}

$('#abc').click(todo);
$('#def').change(todo);

當然,您已經想到了這一點我知道可以重用相同的代碼,創建一個通用函數並調用它。

您可以預定義函數並將其用作參數,同時將函數設置為不同的事件。 像這樣:

 var someEvent = function() {
   // code here
 });


 $('#abc').on('click', someEvent);
 $('#def').on('change', someEvent);
  1. 從事件處理程序調用相同的函數

 $("#abc").change(samefunction); $("#def").click(samefunction); function samefunction(e) { alert(e.target.id) } 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <input type="checkbox" id="abc" /> <input type="button" id="def" value="click" /> 

您無法使用同一jQuery選擇器為2個不同的選擇注冊2個不同的事件 那是函數派上用場的時候:

function go() {
}

$('#abc').click(go);
$('#def').change(go);

僅當事件注冊對選擇器是公共的時,您才能執行此操作。 您可以執行以下操作:

$("#abc  , #def ").on("click change", functionname);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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