2013-02-26 62 views
1

我有7个表(星期一到星期天),每个表下都有一个添加新行的按钮。 我无法重命名该表的ID,因为它是从脚本生成的。Javascript - 向不同表添加行

我想我有两个选择取

1)脚本在JavaScript中选择表,因为只有7

2)包围的div标签里面的表(我可以补充)如this non working example

+0

我认为你是对的:) – Kaf 2013-02-26 12:40:41

+0

是否所有的表都相同的ID? – luckystars 2013-02-26 12:43:20

+0

是的,所有人都有相同的ID,我不能改变他们。 – 2013-02-26 12:52:56

回答

0

你可以做以下 -

调用JavaScript函数上点击按钮,通过该元素。通过引用该元素获取相应的表并在其中添加一行。

function jsfunc(elem) { 
    $(elem).prev("table").append("<tr>....</tr>") //add row logic using jquery 
} 

类似的逻辑使用JavaScript,我认为这不会是你写的问题。 在这种情况下,你永远不会想要表的ID。

+1

提供OP是使用jQuery .. – luckystars 2013-02-26 12:42:35

+0

@ user2008945 - 您可以随时使用javascript函数previousSibling,appenChild。在我的回答中,我没有给出一个工作脚本,而是一个指导,他如何在没有引用id的情况下添加一行。 – Ashwin 2013-02-26 12:46:36

0

试试这个它会工作

function displayResult(number) 
{ 
    var table1=document.getElementById(number).getElementsByTagName("table")[0]; 
    var row=table.insertRow(-1); 
    var cell1=row.insertCell(0); 
    var cell2=row.insertCell(1); 
    cell1.innerHTML="New"; 
    cell2.innerHTML="New"; 
} 
+0

我在这里做错了吗? http://jsfiddle.net/wYmMk/19/ – 2013-02-26 13:31:13

0
YOU can use jQuery for this.... 

    $('.element').on('click', function(){ 
      rows='';  
      var row='<tr><td>...</td>....</tr>'; 
      rows=rows+row; 
      $(rows).appendTo('table'); 
     }); 

for jQuery visit... 

http://jquery.com/

+0

当我使用jquery时,我总是与我的一个模式插件发生冲突。有没有办法找出冲突来自哪里? =( – 2013-02-26 13:29:59

+0

你可以借助jQuery noconflict()方法。 – Amrendra 2013-02-27 03:58:43