2011-08-23 25 views

Trả lời

8

Chỉ cần cho tr.id = "some_id". Điều này sẽ làm việc.

2
var table = document.getElementById("table1"); 
var tr = table.insertRow(); 
tr.id = 'id_for_this_row'; // Just assign a value to the new row's 'id' attribute 
var td = tr.insertCell(); 
td.innerHTML= document.getElementById('txt1').value; 
+0

Nhưng nó không làm việc trong Firefox – Aravinth

+0

Tôi chưa bao giờ có vấn đề đó, hãy thử @reporters giải pháp - làm bạn có cùng một vấn đề? – DaveRandom

+1

Nó sẽ hoạt động trong firefox cũng không có bất kỳ vấn đề nào – AmGates

4

vì bạn sử dụng Javascript chuẩn, bạn phải sử dụng hàm 'setAttribute ("align", "center", 0);'.

Hãy thử sau:

tr.setAttribute("id", "myIdNameforThisRow", 0); 
+0

Có một lý do 'tr.id = 'value';' sẽ không hoạt động? Đó là những gì tôi luôn làm khi tôi 'document.createElement()' và nó hoạt động tốt - nó sẽ không hoạt động với 'insertRow()'? – DaveRandom

+0

Theo cách của bạn, thuộc tính phải tồn tại, nếu không trình duyệt trả về lỗi (Lỗi: Thao tác trên giá trị không xác định). Chỉ những lập trình viên của trình duyệt mới biết tại sao nó không hoạt động. – reporter

+0

Tại sao tôi có thể thêm các thuộc tính và phương thức tùy chỉnh vào các đối tượng HTMLElement bằng cách đặt tên chúng trực tiếp, sau đó? Tôi vừa chơi với điều này và tôi không thể làm cho nó phá vỡ bất cứ nơi nào ... – DaveRandom

0

tạo biến đầu tiên như var id = 0;

sau đó

tr.id=id; 
 
id++;

sử dụng mã này

Các vấn đề liên quan