2010-08-02 367 views
11

我有一個頁面,有幾個div。所有的div都有一個唯一的ID。我想將該ID發送到JavaScript函數。我試圖將它保存爲一個值,併發送this.value,但這也不起作用。通過點擊發送Div id到javascript

<div class='recordElem$val' id='$rname' value='$rname' 
onclick='javascript:updateRecord(this.value);'> 
     $name</div>" 
+5

您是否嘗試過'this.id'? – slebetman 2010-08-02 16:25:23

回答

28

這裏是一個jQuery回答

<script type="text/javascript" src="js/jquery-1.4.2.min.js"></script> 

    <script type="text/javascript"> 
    function clicked(item) { 
    alert($(item).attr("id")); 
    } 
    </script> 


    <div onclick="clicked(this);" id="test">test</div> 
+0

這是一個很好的幫助@布蘭登 – 2013-07-25 12:03:04

+0

有什麼辦法通過href做到這一點? – Samir 2013-09-12 12:06:42

+0

不錯,謝謝! – GedankenNebel 2014-04-01 15:26:30

0

將this.id傳遞給javascript函數怎麼樣?

+0

我最初嘗試過這種方式,出於某種原因它沒有工作。現在它完美地工作。 – richsoni 2010-08-03 15:26:09

2

使用onclick="updateRecord(this)"和處理這樣的:

function updateRecord(div) { 
    // statements 
    var id = div.id; // or however you want to use the id 
    // statements 
} 
6

看一看兩種方式來解決這個問題

<html> 
<body> 
    <div id="scopeId" onclick="javascript:testScope.call(this)">Using scope</div> 
    <div id="parameterId" onclick="javascript:testId(this.id)">Using Parameter</div> 
    <script> 
     function testScope(){ 
      alert("Scope: " + this.id) 
     } 
     function testId(id){ 
      alert("Parameter: " + id) 
     } 
    </script> 
</body> 
</html> 
2

你可以將php變量值分配給javascript變量值。然後你可以使用它的onclick 例如:

<script language="javascript"> 
    var a=<?php echo $tabs['menu_id']; ?> 

    </script> 

    <a href="index.php" onclick="show_center(a);">pass it</a> 

在這裏我們可以通過JavaScript的變量起作用。