问题标签 [preventdefault]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2080 浏览

jquery - 使用 jquery 提交表单时 preventDefault 的递归问题

我有一个需要一些输入的表格,那里的一切都很漂亮。我想从这个表单中获取一个输入值并通过 jquery 将其分配给一个隐藏值。为此,我编写了以下内容:

我将 .preventDefault 绑定到提交就好了,并且没有问题地更改我的值。问题是在更改值后提交表单。无论我尝试过什么,它都会以无限循环结束。如果我删除触发器或 .submit() 或类似的东西,然后将其保留为 unbind,则不会发生任何事情。在这一点上有点难过。

0 投票
8 回答
546397 浏览

javascript - event.stopPropagation 和 event.preventDefault 有什么区别?

他们似乎在做同样的事情……
一个现代的,一个古老的?或者它们是否被不同的浏览器支持?

当我自己处理事件(没有框架)时,我总是检查两者并执行两者(如果存在)。(我也是return false,但我感觉不适用于附带的事件node.addEventListener)。

那为什么两者兼而有之?我应该继续检查两者吗?还是真的有区别?

(我知道,很多问题,但它们都是一样的=))

0 投票
2 回答
2093 浏览

jquery - 通过 jQuery 禁用 href 和 .click

我正在使用 jQuery 构建一个简单的列表过滤器。我在 div 中有一些类别,在 div 中#filter有一些项目#itemlist。通过单击一个项目(超链接),页面的内容通过 .load 加载到下面的 div#content中。选择一个类别后,不在此类别中的项目将获得一个“非活动”类并显示为灰色。

现在,灰色的项目应该是不可点击的

我尝试了不同的方法,但似乎没有一个对我有用。

  • removeAttr('href')不起作用,因为 .load 函数仍在尝试获取内容
  • 同样的事情preventDefault
  • 我试过.bind('click', false);但真的不知道把它放在哪里,因为这些项目在页面加载时都是可点击的,但稍后会在不重新加载页面的情况下被禁用。

这是我过滤项目的代码:

这是也需要禁用/启用的 ajax 调用:

感谢您的任何帮助!

0 投票
2 回答
880 浏览

php - 在 preventDefault() 之后,PHP 函数对提交的响应不同

我正在使用一个 PHP 文件(作为 wordpress 插件的一部分),它包含几个函数。
其中一个构建一个 html 表单,另一个处理提交的表单。
我已经向构建表单的函数添加了一个submit()函数,在该函数中我调用了一个异步函数。
为了让它在提交表单之前完成,我正在使用preventDefault()submit()在异步函数完成时调用。
问题是我对submit()after的调用preventDefault()导致处理提交表单的 PHP 函数的结果与原始提交不同。

这是PHP代码:

当我不使用preventDefault()submit()条件为正且表单提交正常时。
当我使用它们时,第二部分被执行并且表单正在重建而不是提交。
所以问题是:什么是错误的preventDefault(),然后submit()导致isset($_POST['submit-reg']))错误,我该如何解决?
编辑:这是JS:

0 投票
1 回答
62 浏览

javascript - JS var 声明 - 由于变量持有相同值的函数问题导致错误验证

我正在对表单“文本输入”进行验证。如果用户将输入留空,则函数开始运行。如果该字段大于 1 - 所以它不会进入函数。

问题是:第一次,用户将输入留空,函数运行,我得到了警报——没关系。第二次,用户在 AGE 输入中添加了 10 - 他再次收到警报 - 但他不应该。

注意:年龄输入值,从不同的函数(calc)返回到一个名为:result 的 var。

这是代码:

});

因此,如果您第二次尝试单击提交,那么您将进入 $('#btn_send').click(function() 并且即使您在 AGE(作为结果返回)输入中添加了例如 67,您也会进入IF atatement 即:if (result<1)

我对开发很陌生,所以我希望你能理解我。对不起,如果我有错误。你能建议这个问题的更好的 TITLE 吗?

在此先感谢, 谢

0 投票
2 回答
10496 浏览

jquery - 阻止 Firefox 中 jQuery keydown 的默认事件

我有 jQuery 代码,它制作了一组可聚焦元素并将 .keydown 绑定到左右箭头以通过它们制表符。在 Chrome、IE 和 Safari 中,以 return false 开头preventDefault()或结尾(从技术上讲,我不想使用它,因为我不需要stopPropagation())防止箭头的默认事件,但在 Firefox 中它不会。

如何防止 Firefox 中的默认操作?

这是代码,它按预期工作,除了在我的回调之外触发默认事件的 Firefox 中。

0 投票
1 回答
564 浏览

javascript - jquerymobile 确认似乎不会影响结果?

这是来自 jquerymobile 应用程序的片段。这是一个简单的文件管理器,允许删除文件,我想确认删除。我正在尝试使用 javascript确认来仔细检查一个动作是否应该继续;但似乎无论我做什么,我都无法阻止它的发生。

您可以看到我尝试了 3 种不同的方法来阻止链接重定向页面,但它们似乎都没有达到我的预期。我究竟做错了什么?

0 投票
3 回答
2553 浏览

jquery - jquery - 禁用/模拟提交按钮的“输入”行为

编辑**为了让这更清楚一点....

当我用鼠标单击输入放置按钮时,它会通过 ajax 发布,就像我想要的那样:mysite.com:8888/save/1?val=&val2=&val3=...

当我在文本字段中并点击“输入”时,它会提交给自己,而不是通过 ajax ......它就像一个常规的提交表单......我只是想弄清楚如何获得“输入” " 按钮也可以通过 ajax 发布...

这是表单的(部分)html:

用于创建提交按钮的 php 是:

所以,当我点击按钮时,我得到进度指示等,当我点击“输入”时,整个页面被提交并刷新......


我有一个使用提交按钮的 ajax 表单(必须输入 type="submit"... 不能使用 "button")。当我单击它时,它会按预期工作,因为它实际上并没有“提交”信息,但是当我按 Enter 时,它会完全提交表单。我一直在浏览这里的论坛,我可以找到很多关于禁用该行为的帖子,但我希望它能够像“单击”按钮并按下回车键一样工作......我尝试了在其他一些线程中发布的各种迭代(很多带有“preventDefault”),但它一直在输入时提交......

我试过这个:

0 投票
3 回答
4878 浏览

jquery - 如何在 Jquery 中选择 td 类

我在选择 DOM 上的元素时遇到问题。

td类垃圾桶的所有链接如何选择?

以下代码不执行任何操作且无法正常工作:

0 投票
4 回答
4457 浏览

jquery - 我在使用 event.preventDefault(); 时遇到问题;对于我的 DOM 上的 ahref

我在我的 DOM 上使用event.preventDefault();for an时遇到问题。ahref

如使用 JQuery 的 HTML 指定的那样,如何防止 url 发布 nofollow 删除?

下面的代码应该会破坏 HTML,但 HTML 在给出“你确定”警告之前会发布一个删除操作。没有什么不工作: