【问题标题】:How to prevent the admin customer form when click on save and continue button with Jquery Script?使用 Jquery 脚本单击保存并继续按钮时如何防止管理员客户表单?
【发布时间】:2017-11-21 07:01:50
【问题描述】:

我需要在 magento2 管理客户表单中放置自定义验证。

我已经尝试使用以下代码,得到警报但它重定向并保存了客户。

$("#save_and_continue,#save").on('click',function(e){
   //alert('test');
   return false;
   // e.preventDefault();
});

请帮我解决这个问题。

谢谢

【问题讨论】:

  • 你为什么评论e.preventDefault()?这条线应该可以完成这项工作
  • 嗨 Antonin ,我没有评论仍然遇到同样的问题
  • 尽量把你的return false前的那一行;
  • 如果是提交按钮,那么它可以有特殊条件,你应该把它绑定到submit事件。检查stackoverflow.com/questions/2985196/…
  • @Rana,你得到它的答案吗> 如果是,请发布答案。我也有同样的问题。

标签: jquery magento2


【解决方案1】:

你的代码应该是:

$("#save_and_continue,#save").on('click',function(e){
   e.preventDefault();
   alert('test');
   return false;
});

你应该把 e.preventDefault() 放在你的函数中返回一些东西之前,因为 return 关闭你的函数,所以 e.preventDefault() 不会被执行。

希望对你有所帮助

【讨论】:

  • 谢谢你,我试过了,仍然遇到同样的问题
  • 这里是代码 $("#save_and_continue,#save").on('click',function(e){ e.preventDefault() e.stopPropagation();; alert('test '); 返回 false; }); Magento 2 管理员客户表单基于 onclick 提交,而不是表单提交。
  • 如果它基于 onClick 按钮,您可能应该在代码中找到提供此操作(重定向)的内容,您可能应该剪切它或阻止此操作
  • 感谢您的评论,但我们无法更改默认的 magento 功能。最好编写自定义脚本而不是使用核心
【解决方案2】:

您应该删除标记中的 onclick,因为它会在您从 JQuery 添加点击侦听器之前触发。

$('<your form selector>').on('click', function(event) {
 if(isn't a valid submission){
    event.preventDefault()
 }else{
    // add onclick event code here!!!
 }

}

& event.stopPropagation() 如果你不想让它冒泡的话。并且,请注意,return false 不再被视为良好做法,因为运行时错误会阻止返回。

【讨论】:

  • Magento 2 管理员客户表单基于 onclick 事件提交,而不是表单提交。这是我的还原代码 $("#save_and_continue,#save").on('click',function(e){ e.preventDefault(); alert('test'); e.stopPropagation(); return false; } );使用 e.preventDefault() 也无法停止表单
  • 你能给我这个HTML标记,如果它只是一个按钮,那为什么要提交?
  • 这里是按钮标签 在magento onclick 功能不同,请检查一次magento 功能并帮我解决这个问题
  • onclick="location.href = 'local.mysite.com/';" 这会将另一个事件侦听器附加到单击事件。 onclick 将在您的方法之前执行,因此您无法阻止提交。尝试将此代码添加到您的自定义处理程序中并删除 onclick 属性。
猜你喜欢
  • 1970-01-01
  • 2011-09-02
  • 2021-07-23
  • 2012-10-17
  • 1970-01-01
  • 2014-08-15
  • 2021-02-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多