event.preventDefault没有'似乎不起作用

event.preventDefault doesn't seem to work

本文关键字:不起作用 preventDefault 没有 event      更新时间:2023-09-26

所以我试图阻止表单刷新页面,这是我正在使用的代码:

$("#getName").submit(function(refresh) {
    refresh.preventDefault();
    $("#p22").fadeOut(50);
    $("#p23").fadeIn(800);
    document.getElementById("p23").innerHTML = "Oh " + userName + ", alright i wont forget that!";
})

我似乎无法正常工作。。。。

id=getName-是表单id

您的问题类似于:https://stackoverflow.com/a/6462306/986160

试试这个:

$("#getName").submit(function(refresh) {
    $("#p22").fadeOut(50);
    $("#p23").fadeIn(800);
    $("#p23").html("Oh " + userName + ", alright i wont forget that!");
    return false;
})

返回false类似于refresh.prventDefault()和refresh.stopPropagation()在一起;)请在此处查看详细信息:https://stackoverflow.com/a/1357151/986160

我得到了jQuery文档的这个示例代码,它似乎工作得很好(它发出警报,但没有链接到destination.html。代码中的一切似乎都很好,可能是你想要的不同东西。

http://api.jquery.com/submit/

$( "#target" ).submit(function( event ) {
  alert( "Handler for .submit() called." );
  event.preventDefault();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<form id="target" action="destination.html">
  <input type="text" value="Hello there">
  <input type="submit" value="Go">
</form>
<div id="other">
  Trigger the handler
</div>

返回false将不会验证表单,也不会刷新页面。

$("#getName").submit(function(refresh) {
    refresh.preventDefault();
    $("#p22").fadeOut(50);
    $("#p23").fadeIn(800);
    document.getElementById("p23").innerHTML = "Oh " + userName + ", alright i wont forget that!";
    return false;
})