2017-07-14 108 views
0

我創建了使用這種通用代碼的幾個按鈕:呼叫按鈕的ID來onclick事件後的JavaScript文件

<button class="button" id = "b1" value="0" onclick="checker()"></button> 

我目前正在寫一個javascript「檢查器()」方法進行檢查,看是否「身份證'按鈕匹配外部值。要做到這一點,我需要按鈕的'id'被髮送到我的腳本,一旦相應的按鈕被點擊。然後,我將把'id'變量設置爲一個值。我怎樣才能做到這一點?我可以做一個按鈕,我知道該ID,但我希望我的代碼是一般的。我願意使用jQuery。

+0

當你將它傳遞給腳本方法時,你想用id做什麼?男人我會把這個id變量設置爲一個值? –

+0

我真的會說var xyz = ['id'的值] – taurus

+0

檢查我的答案隊友 –

回答

1

首先,讓我們創建將接受ID作爲參數JavaScript方法:

var checker = function(id) 
{ 
    //we will do something here later, lets understand this now 
} 

我需要的按鈕的「ID」,一旦它 相應的按鈕,點擊發送到我的腳本。

所以,如果你想獲得的事件處理程序綁定到的元素的ID,你可以用this.idthis指元素)做到這一點很容易,就像這樣:

<button class="button" id = "b1" value="0" onclick="checker(this.id)"></button> 

然後,我會將'id'變量設置爲一個值。我怎樣才能做到這一點?我打開了使用jQuery的 。

您可以通過下面的下面的代碼做到這一點,我們基本上得到了點擊的按鈕id,和你的方法裏面,你可以做任何你想要與你的id。通過閱讀您的評論我見你們的id值只分配到一些xyz變量:

var checker = function(id) 
{ 
    var xyz = id; // now your xyz has a value of clicked button id 
} 
0

既然你是開放的使用jQuery 想讓你的代碼一般情況下,有一個更簡單的方法以更少的打字來完成你想要的任務。

您的按鈕

<button class="button" id = "b1" value="0"></button> 

你的JavaScript

//be sure to include jQuery 
<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script> 
<script type="text\javascript"> 
    //you must call this for jQuery to load/function 
    $(function(){ 
     //anything that has a class of "button", attach this handler 
     //this handles any "click" of a button with class "button" 
     $(".button").on("click", function(){ 
       //alert the attribute of id for whatever element (this) was 
       //clicked 
       alert($(this).attr("id")); 
     }); 
    }); 
</script> 

下面是一個工作示例代碼片段

$(function(){ 
 
    $(".button").on("click", function(){ 
 
     var btnId = $(this).attr("id"); 
 
     alert(btnId); 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<button class="button" id="b1" value="B1">B1</button> 
 
<button class="button" id="b2" value="B2">B2</button>

+0

有什麼特別的理由讓人覺得他們應該低估這個答案?以某種方式改進它? – Tommy