2012-06-20 33 views
10

Tôi có hai nút khác nhau trên trang của mình. Tôi muốn cả hai đều được kích hoạt khi tải trang, nhưng khi người dùng nhấp vào một trang tôi muốn vô hiệu hóa nút khác. Nhưng nếu họ nhấp vào nút khác, tôi cũng muốn nút đó bị vô hiệu hóa trong khi bật nút bị tắt khác. Tôi đã có thể vô hiệu hóa nút onclick, nhưng tôi gặp sự cố khi nhận nút khác để bật lại. Dưới đây là hai nút mà tôi có trên trang. Chúng không ở dạng, chỉ trên trang.Tắt nút onclick nhưng bật một nút khác

<button onclick="down7913.disabled=false" type="submit" class="positive" name="up7913"><img src="check.png" alt=""/></button> 

<button onclick="this.disabled=true" type="submit" class="negative" name="down7913"><img src="cross.png" alt=""/></button> 
+0

Nếu bạn không gặp vấn đề gì với jQuery, tôi có thể cung cấp cho bạn giải pháp. – asprin

+2

http://jsfiddle.net/mowglisanu/2jBtV/ – Musa

+0

Cảm ơn Musa ... Bạn có thể thêm bạn làm câu trả lời thay vì nhận xét không? – austinhollis

Trả lời

22

Kiểm tra mã này, đó là trong hương vị và làm việc của bạn:

<button onclick="document.getElementById('up7913').disabled=true;document.getElementById('down7913').disabled=false;" type="submit" class="positive" name="up7913" id="up7913">First</button> 

<button onclick="this.disabled=true;document.getElementById('up7913').disabled=false;" type="submit" class="negative" name="down7913" id="down7913">Second</button> 
3

Bạn nên viết các chức năng:

function disablefirstbutton() { 
    document.getElementById("firstbutton").disabled = true; 
    document.getElementById("secondbutton").disabled = false; 
} 

function disablesecondbutton() { 
    document.getElementById("secondbutton").disabled = true; 
    document.getElementById("firstbutton").disabled = false; 
} 

<button id="firstbutton" onclick="disablefirstbutton()"> 
<button id="secondbutton" onclick="disablesecondbutton()"> 
0

Bạn có thể thử một cái gì đó như:

onclick="document.getElementsByClassName('negative')[0].disabled=false" 

Đó là tinh khiết javascript và xin lưu ý document.getElementsByClassName('negative') lợi nhuận một array của tất cả các lớp học. Nếu chỉ có một, thì nó sẽ hoạt động như tôi đã viết. Nếu không, sau đó tôi sẽ thêm một id và sử dụng document.getElementById('buttonId').disabled=false.

1

Nếu bạn không nhớ sử dụng jQuery, ở đây nó là!

$(function() { 
    $('button').click(function() { 
     var classname = $(this).attr('class'); 

     if(classname == 'positive') 
     { 
      $('button.positive').attr('disabled', 'disabled'); 
      $('button.negative').attr('disabled', false); 
     } 
     else 
     { 
      $('button.negative').attr('disabled', 'disabled'); 
      $('button.positive').attr('disabled', false); 
     } 
    }); 
});