2011-02-24 93 views
0

我有一些代码,当你点击一个按钮它填充文本框的文本,然后prepends另一个按钮,该div。在IE浏览器中的jQuery问题

它适用于除IE之外的所有浏览器,它会给出一个javascript错误。

我可以很容易解释的唯一方法是通过使用我的jsFiddle

如果您使用的是从IE除了任何浏览器,然后单击Book now选择一个日期,然后另一个按钮就会出现Submit

这是正确的行为,但如果你选择一个日期使用IE浏览器,然后尽快有一个JavaScript错误Unexpected call to method or property access

任何想法?

由于

+2

您可以添加jQuery代码? – TNC 2011-02-24 13:05:19

回答

2

问题是由这一行引起的:

$(".dupeadultcost").html($(this).parent().siblings().find(".adultcost").html()); 

由于存在与一个类dupeadultcost这在IE吹起来的文本框。如果你只是想设置的跨度,我建议你使用:

$("span.dupeadultcost").html($(this).parent().siblings().find(".adultcost").html()); 

工作的例子 - http://jsfiddle.net/d9TP8/1/

+0

非常感谢:) – 2011-02-24 13:20:57

+1

只是为了澄清:问题是你不能直接设置文本框的innerHTML,这是没有意义的。而其他浏览器只是忽略它,IE会报告它作为它的一个神秘错误。 :) – 2011-02-24 13:24:29

+0

感谢您的解释@Shadow Wizard – 2011-02-24 14:28:04

0

问题是与这两条线

$(".dupeadultcost").html($(this).parent().siblings().find(".adultcost").html()); 

$( “excursionSubmitButton”)。 prependTo($(本).parent())显示()。 //显示表单提交按钮

您需要更换类slectors(例如.dupeadultcost到ID选择#txtAdultcost),它会工作