firebug指向jquery错误,但我不知道如何解决错误

时间:2012-06-04 01:54:16

标签: jquery firebug conflict

我相信我的网站上存在jquery冲突。但我不明白如何使用firebug进行调试。

点击购物车页面上的“计算送货和处理链接”时,结果永远不会显示。

要执行此操作,您需要先在http://www.musicforte.com/sheet_music/将商品添加到购物车,然后点击页面右上角的“购物车”。

在使用“persist”查看“console”时我在firebug中看到的是一个红色x,并且jquery.js第141行出现错误。

我如何理解冲突的位置并解决它?

我修改了代码,根据建议将ID包含在Calculate Shipping按钮中,但仍然没有运气。这是使用的代码:

我尝试在计算运费按钮中添加ID。但它并没有解决问题。我将代码修改为:

<a href="#" class="EstimateShippingLink" onclick="Cart.ToggleShippingEstimation(); return false;"><em>%%LNG_CalculateShippingHandling%%</em></a>
                        <div class="EstimateShipping" style="display: none;">
                            <div class="EstimatedShippingMethods" style="display: none;">
                                <div class="ShippingMethodList">
                                </div>
                                <hr />
                            </div>
                            <dl>
                                <dt>%%LNG_Country%%:</dt>
                                <dd>
                                    <select style="width:200px;" name="shippingZoneCountry" id="shippingZoneCountry" onchange="Cart.ToggleShippingEstimateCountry();">
                                        %%GLOBAL_ShippingCountryList%%
                                    </select>
                                </dd>

                                <dt>%%LNG_StateProvince%%:</dt>
                                <dd>
                                    <select style="display: %%GLOBAL_ShippingHideStateList%%" style="width:200px;" name="shippingZoneState" id="shippingZoneState">
                                        %%GLOBAL_ShippingStateList%%
                                    </select>
                                    <input style="display: %%GLOBAL_ShippingHideStateBox%%" type="text" class="Textbox Field200" name="shippingZoneStateName" id="shippingZoneStateName" value="%%GLOBAL_AddressState%%" />
                                </dd>

                                <dt>%%LNG_ZipPostcode%%:</dt>
                                <dd><input type="text" class="Field100 Textbox" name="shippingZoneZip" id="shippingZoneZip" value="%%GLOBAL_ShippingZip%%" /></dd>
                            </dl>
                            <p class="Submit EstimateShippingButtons">
                                <span style="display:inline-block;padding-right: 10px;vertical-align:top;"><a href="#" onclick="Cart.ToggleShippingEstimation();">%%LNG_Cancel%%</a> %%LNG_or%% </span><input type="image" class="formBtn" src="%%GLOBAL_TPL_PATH%%/images/%%GLOBAL_SiteColor%%/CalculateShipping.gif" onclick="Cart.EstimateShipping();" value="%%LNG_CalculateShipping%%" id="fixshipping" />
                            </p>
                        </div>

1 个答案:

答案 0 :(得分:0)

问题是您将模块嵌入到表单中,当您单击图像输入时,它正在执行浏览器默认设置并且正在提交整个表单,而不仅仅是您的发货字段,并导致页面重新加载。

我认为错误是由于ajax被中止。

我在控制台中运行了这个,并且能够在没有页面重新加载的情况下返回运费计算,或者错误

$('.EstimateShippingButtons input').click(function(){
   return false;
})

您可能希望改进选择器,或者为您的shiiping calcs提交按钮添加ID

编辑:实际上只需要将return falseevent.preventDefault()添加到现有的处理程序

在cart.js中将其添加到Cart.EstimateShipping

的末尾