从动态表中删除行

维琪

我已经使用Javascript动态创建了一个表。我可以添加行,但不能删除。

MyHtml:

<div id="Mutipletextboxhandler" style="text-align: center;" class="step" name="Mutipletextboxhandler">
    </div> 
        <input id="Hidden" type="hidden" runat="server" value="" />
        <input id="btnAddexisting" type="button" value="Insert item" onclick="AddmultipleTextBox()" />

而我的Javascript:

    <script type="text/javascript">
        function AddmultipleTextBox() {
            var div = document.createElement('DIV');
            div.innerHTML = GetDynamicmultipleTextBox("");
            document.getElementById("Mutipletextboxhandler").appendChild(div);
        }

        function GetDynamicmultipleTextBox(value) {

            return '<table id="d"><tr><td><input name = "mDynamicTextBox1" type="text" value = "' + value + '" /></td><td><input name = "mDynamicTextBox2" type="text" value = "' + value + '" /></td'+
            '<td><input name = "mDynamicTextBox3" type="text" value = "' + value + '" /></td>'+
            '<td><input type="button" value="Remove" onclick = "RemovemultipleTextBox(this)" /></td>' +
            '</tr></table>'
       }
    **//Problamatic Function is below:**
        function RemovemultipleTextBox(div) {        
            document.getElementById("Mutipletextboxhandler").removeAttributeNode(div);
            }
        function RecreateDynamicmultipleTextboxes() {
            var mvalues = eval('<%=mValues%>');
            if (mvalues != null) {
                var html = "";
                for (var i = 0; i < mvalues.length; i++) {
                    html += "<div>" + GetDynamicmultipleTextBox(mvalues[i]) + "</div>";
                }
                document.getElementById("Mutipletextboxhandler").innerHTML = html;
            }
        }
      window.onload = RecreateDynamicmultipleTextboxes;
</script>

问题-添加行的工作正常,但是当我删除时,则出现“不支持此类接口”错误即将到来。如果我没有表,只有一个texbox,它的工作正常。有人请帮忙。

约翰尼·杜昂

尝试 document.getElementById("Mutipletextboxhandler").removeChild(div)

更新:

您可以像这样更新您的功能

function RemovemultipleTextBox(div) {
  while((div.tagName != "HTML" || div.tagName != "TABLE") && div.id != "d") {
    div = div.parentNode
  }
  if(div.tagName == "TABLE") {
    document.getElementById("Mutipletextboxhandler").removeChild(div.parentNode);
  }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章