ie8/ie7之后的jquery不工作

标签 jquery internet-explorer jquery-1.4

我正在尝试在现有 DOM 元素之后插入数据。我收到错误“参数无效”。 -- this.parentNode.insertBefore

这在 IE8 或 IE7 中不起作用。有想法吗?

Jfiddle 示例:http://jsfiddle.net/zJ3Fe/

<a href="#" id="delete_promo">Click</a>

<div id="customer-info" class="span-12">
        <form id="UserFormCheckoutForm" method="post" action="/chicagophotographycenter/checkout" accept-charset="utf-8"><div style="display:none;"><input type="hidden" name="_method" value="POST" /></div>
        <h2 class="line"><span>Billing/Shipping Address</span></h2>
        <div class="padding">
            <div id="billing-first-name">
                <label>First Name</label><br />
                <span><input name="data[User][first_name]" type="text" maxlength="150" value="Fred" id="UserFirstName" /></span>
            </div>
            <div id="billing-last-name">
                <label>Last Name</label><br />
                <span><input name="data[User][last_name]" type="text" maxlength="150" value="" id="UserLastName" /></span>
            </div><br />
            <div id="billing-email">
                <label>Email</label><br />
                <span><input name="data[User][email]" type="text" maxlength="255" value="" id="UserEmail" /></span><br />
            </div>
            <div id="billing-phone">
                <label>Phone Number</label><br />
                <span><input name="data[Customer][phone]" type="text" maxlength="15" value="" id="CustomerPhone" /></span><br />
            </div>
            <label>Street Address</label><br />
            <span><input name="data[Address][0][address]" type="text" maxlength="150" value="" id="Address0Address" /></span><br />
            <span><input name="data[Address][0][address2]" type="text" maxlength="150" value="Suite 203" id="Address0Address2" /></span><br />
            <div id="billing-city">
                <label>City</label><br />
                <span><input name="data[Address][0][city]" type="text" maxlength="150" value="" id="Address0City" /></span>
            </div>
            <div id="billing-state">
                <label>State</label><br />
                <span><input name="data[Address][0][state]" type="text" maxlength="2" value="IL" id="Address0State" /></span>
            </div>
            <div id="billing-zip">
                <label>Zip</label><br />
                <span><input name="data[Address][0][zip]" type="text" maxlength="10" value="" id="Address0Zip" /></span><br />
            </div>
        </div><!-- end .padding -->
    </div><!-- end #customer-info -->



<script type="text/javascript" charset="utf-8">
     $('#delete_promo').click(function() {     
        $('#customer-info').after('<div id="payment">Credit Card</div>');

        $('#UserFirstName').val('Test');

        return false;
    });
</script>

最佳答案

我不认为这是评论。即使没有它们,我仍然会收到错误。

但是,如果我包含缺失的 </form> ,问题就会消失。 #customer-info 内的关闭标签。 (验证器是你的 friend !)

但是奇怪的错误,可能与 IE 在给定错误嵌套的 HTML 时执行的奇怪的不一致层次结构技巧有关。

关于ie8/ie7之后的jquery不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3969439/

相关文章:

jQuery 1.4 动态创建的图像纵横比在 IE8 和最大宽度中不正确

javascript - 定位动态创建的按钮

javascript - Knockout.js 从 observableArray 中提取元素返回未定义

java - Selenium 代码不适用于 Internet Explorer

javascript - 如何并排使用两个不同版本的 jQuery?

javascript - 我无法让 live() 表现得像悬停()

jquery - Handsontable 加载时触发的事件

jquery - 将导航栏置于网站内容之上

html - IE 8/10 兼容性问题 : My aside is dropping below my main, 当它应该并排时

CSS 光标 : pointer in a row ( IE )