我一直很满意地使用像这样的提交按钮
<a href="javascript:void()" onclick="document.booking.submit()" class="buttonavail"></a>
一段时间了。该类定义了按钮的位置及其外观。
现在我已经在页面中添加了一个Jquery脚本,该按钮不再有效。脚本是
$(document).ready(function() {
$("#tabcontent > div").hide(); // Initially hide all content
$("#tabs li:first").attr("id","current"); // Activate first tab
$("#tabcontent div:first").fadeIn(); // Show first tab content
$('#tabs a').click(function(e) {
e.preventDefault();
if ($(this).closest("li").attr("id") == "current"){ //detection for current tab
return
}
else{
$("#tabcontent > div").hide(); //Hide all content
$("#tabs li").attr("id",""); //Reset id's
$(this).parent().attr("id","current"); // Activate this
$('#' + $(this).attr('name')).fadeIn(); // Show content for current tab
}
});
$('#prices').load('../prices.php?hid=<?php echo $hid;?>');
});
据推测,这与在href中使用“javascript:void()”有关,但我看不出原因。是否有另一种方法来编写href以使两者一起工作?
部分解决方案 这个问题并不是我认为的那样。最后,我发现父页面和Jquery正在加载的页面都包含一个具有相同名称的页面。重新命名其中一个表单解决了问题的这一部分。
然而现在我已经找到了另一个看起来是两个Jquery之间冲突的问题。我在Jquery - Scripts are conflicting
询问了另一个问题答案 0 :(得分:1)
更改功能如下。在函数的最后一行添加提交,如我所示
$('#tabs a').click(function(e) {
e.preventDefault();
if ($(this).closest("li").attr("id") == "current"){ //detection for current tab
return
}
else{
$("#tabcontent > div").hide(); //Hide all content
$("#tabs li").attr("id",""); //Reset id's
$(this).parent().attr("id","current"); // Activate this
$('#' + $(this).attr('name')).fadeIn(); // Show content for current tab
}
$(this).submit() **// ADD HERE**
});
答案 1 :(得分:0)
$('#tabs a').click
是你的问题。您正在使用此代码覆盖<a>
标记的点击事件。
您可以将jQuery代码更新为:
$('#tabs a:not(.buttonavail)').click