【问题标题】:How to cancel the submit of a button with jQuery如何使用 jQuery 取消按钮的提交
【发布时间】:2012-03-15 22:28:13
【问题描述】:

当我使用 jQuery UI 输入功能时,当按钮被点击时,它会提交/刷新整个网页。如何停止/取消整个网络以重新加载?

<input style='width:65px;' type='button' class='ui-button ui-button-text-only ui-widget ui-state-default ui-corner-all Bags' id='Buy' name='".$idn."' value='Buy Bags'>

是不是有点像:

$('.Bags').click(function(){
    var $a = $(this).val();
    var $b = $(this).attr('id');
    var $c = $(this).attr('name');
    /* input/button is the issue, how do i stop the form from refreshing? */
});

提前致谢!

编辑

在这里/那里学习了一些东西之后,找到了另一种简单的方法来做到这一点,虽然有些人可能不同意,但它到目前为止有效:

<input style='width:65px;' type='button' class='Bags' id='Buy' name='".$idn."' value='Buy Bags' onclick='return false;'>

通过添加“onClick='return false;'”将停止刷新/重新加载表单。

【问题讨论】:

  • 如何在jQuery中做what?您的问题不清楚。
  • .. 陈述你的目标可能不是一个糟糕的主意。你什么都没有调用 .ajax() 。这是一个语法错误。试试 jQuery.ajax()。下次请至少花 5 分钟回答一个问题。
  • 您希望我们为您阅读 api 吗? api.jquery.com/jQuery.ajax
  • 如果是input type="button",不需要取消提交,因为那个input没有提交表单。
  • ok 得到了 type='button' 部分,我可以理解它没有提交,我的问题是输入不会显示基于 的 $a,$b,$c我在上面,这部分我哪里错了?

标签: jquery button input


【解决方案1】:

假设 .Bags 有一个提交操作(在你的情况下它没有,所以不需要 preventDefault:

$('.Bags').click(function(e){
    var $a = $(this).val();
    var $b = $(this).attr('id');
    var $c = $(this).attr('name');
    .ajax(blah blah blah); (this one I know - input/button is the issue)
    e.preventDefault(); // prevents default
    return false; // also prvents default (i like to add both but just the e.preventDefault is required :) )
});

【讨论】:

  • 但它会是一个 而不是
  • 将该函数附加为表单的submit 处理程序。确保它返回 false 以禁止自然 HTML 表单提交。
猜你喜欢
  • 2010-11-17
  • 1970-01-01
  • 1970-01-01
  • 2011-05-26
  • 2016-03-23
  • 1970-01-01
  • 2017-05-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多