2010-08-02 2 views
11

Tôi có một trang có nhiều div. Tất cả các div đều có một id duy nhất. Tôi muốn gửi id đó đến một hàm javascript. Tôi đã cố gắng để lưu nó như là một giá trị là tốt, và gửi this.value, nhưng điều đó không hoạt động hoặc.Gửi id Div tới javascript qua onclick

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

Bạn đã thử 'this.id' chưa? – slebetman

Trả lời

28

Dưới đây là một jQuery trả lời

<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

đây là cách tốt nhất giúp @ Brandon –

+0

Có cách nào để thực hiện điều đó thông qua href không? – Samir

+0

đẹp, cảm ơn bạn! – GedankenNebel

0

Làm thế nào để chuyển this.id đến hàm javascript?

+0

Tôi đã thử điều này ban đầu, và vì một lý do nào đó nó không hoạt động. Bây giờ nó hoạt động hoàn hảo. – richsoni

2

Sử dụng onclick="updateRecord(this)" và xử lý nó như thế này:

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

Hãy nhìn vào hai cách để giải quyết vấn đề này

<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

Bạn có thể gán giá trị biến php cho giá trị biến javascript. Sau đó, bạn có thể sử dụng nó trênclick ví dụ:

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

    </script> 

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

Ở đây chúng tôi có thể chuyển biến javascript hoạt động.