这是js代码
function addYY(element){
var tag = element.parentNode;
var tagP = document.createElement("p");
var yyInput = document.createElement("input");
var butInput = document.createElement("input");
yyInput.setAttribute("type","text");
yyInput.setAttribute("name","yyCheck");
yyInput.setAttribute("maxlength","128");
yyInput.setAttribute("size","60");
butInput.setAttribute("type","button");
butInput.setAttribute("value","删除");
butInput.setAttribute("onclick","removeYY(this)");
tagP.appendChild(yyInput);
tagP.appendChild(butInput);
tag.appendChild(tagP);
element.remove;
tag.appendChild(element);
}function removeYY(element){
var tag = element.parentNode;
if(confirm("确定删除此条原因?")){
tag.remove();
}
}
html页面代码:
<tr>
<td width="70" align="left" style="padding-left: 5">
原因:
</td>

<td align="left"  style="padding-left: 5" bgcolor="#FFFFFF">
<logic:iterate id="ary" name="yyArray">
<%-- <html:text property="${ary}"  maxlength="128" size="50"/> --%>
<p>
<input  type="text" name="yyCheck" value="${ary}" maxlength="128" size="60"/>
<input  type="button" value="删除" onclick="removeYY(this)"/>
<font class="needColor" >*</font><br/>
</p>

</logic:iterate>
<input  type="button" value="增加" onclick="addYY(this)"/>
</td>
</tr>现情况是这样的:在谷歌浏览器下,我按下增加的按钮后,会增加一个输入框和删除按钮,如图,然后点击删除按钮,可删除刚增加的输入框。
可是在IE浏览器下,只会实现增加功能,但是点击删除按钮时无效的,我用调试工具看了下,IE下并没有出现此标签。。求前端大神高手帮忙解决..jsie谷歌

解决方案 »

  1.   

    这个是闹甚?element.remove;
      

  2.   

    Quote: 引用 1 楼 mmm306306 的回复:

    晕,这个弄错了,不过我刚把这行给去掉了,还是没用
      

  3.   

    给他父元素起个id名比如ddd,然后document.getElementById('ddd').removeChild(tag);
      

  4.   

    Quote: 引用 4 楼 ameol 的回复:

    可是我把removeYY(element)方法里只做了个alert("----");都调用不到。。这是什么问题呢
      

  5.   

    removeYY事件执行成功了? 跑到里面发现 element 是空的?
      

  6.   

    你吧元素的ID和name都设置上值。
      

  7.   

    Quote: 引用 6 楼 wcnm007 的回复:

    没成功,而且removeYY都没被调用到
      

  8.   


    function removeYY(obj){
    var row = obj.parentNode.parentNode; 
    var tb = row.parentNode; //当前表格
    var rowIndex = row.rowIndex;
    if(tb.rows.length>1){
    tb.deleteRow(rowIndex);
    }
      

  9.   

    Quote: 引用 9 楼 ziyu529 的回复:

    主要是新加的input ,点击一下,调用不到removeYY();里面只写了alert
      

  10.   

    本质就是你的tag.remove();这行代码不兼容问题。
    改为:function removeYY(element) {
                    var tag = element.parentNode;
                    if (confirm("确定删除此条原因?")) {
                        tag.parentNode.removeChild(tag);
                    }
                }这种动态添加我一般用这个方法:<td>
                    <p id="pTemp" style="display: none;">
                        <input  type="text" name="yyCheck"  maxlength="128" size="60"/>
                        <input  type="button" value="删除" onclick="removeYY(this)"/>
                    </p>
                    <p>
                        <input  type="text" name="yyCheck"  maxlength="128" size="60"/>
                        <input  type="button" value="删除" onclick="removeYY(this)"/>
                    </p>
                    <input  type="button" value="增加" onclick="addYY(this)"/>
                    </td>然后addYY方法:function addYY(element) {
                    var p1=document.getElementById("pTemp");
                    var newP=p1.cloneNode(true);
                    p1.parentNode.insertBefore(newP,element);
                    newP.style.display="";
                }这样好处是减少js代码量,并且样式什么的都可以事先控制好。缺点就是保存时候需要忽略隐藏那个模板元素。
      

  11.   

    Quote: 引用 11 楼 whatisma 的回复:

    按你的改了下,还是差不多情况,chrome下可以删掉,IE下不可以。但是removeYY()是触发了,但是element传进来的却是object
      

  12.   

    Quote: 引用 11 楼 whatisma 的回复:

    可以了,十分感谢!