繁体   English   中英

使用javascript或jquery提交链接而不刷新页面

[英]Submit a link using javascript or jquery without refreshing a page

我有一个链接,该链接调用保存会话的API。 假设我的API位于http://www.example.net上,并且我的链接如下:

 <a href="http://www.example.net" >Click here </a>

现在,我不想刷新页面。 只需使用JQuery或Javascript即可简单地执行链接,并发出“ Action Succesfull”之类的警报。 我看不到使用AJAX的意义,因为我不需要任何数据库操作。 谢谢

AJAX的目的不是执行数据库操作,而是与服务器通信而不需要重新加载页面。 我认为您的描述符合使用AJAX的资格,因为您确实希望服务器提供答案,并且您不想重新加载页面。

您也可以打开iframe或新窗口,但是ajax可能是此处的解决方案。

请记住,单击锚点时需要取消该事件。

因此,使用ajax,您可以这样:

$('a').on('click', function(e) {
  e.preventDefault;
  var href = this.getAttribute('href');
  $.ajax({
    url: href,
    success: function(text) {
      alert(text);
    }
  });
});

您将需要一个ajax调用。 像这样:

$.ajax({
    cache: false,
    type: "Post",
    url: "http://www.example.net",
    success: function () {
       alert("Success");
    },
    error: function (xhr, ajaxOptions, thrownError) {
        alert("Error");
    },
    finaly: function () {
        alert("Finish");
    }
});

如果您不想使用AJAX,则可以简单地使用onclick事件

<a href="http://www.example.net" onclick="event.preventDefault();">Click here </a>

当单击按钮提交或链接时,尝试使用ajax调用。 这是代码:

$("a").click(function(e){
    $.ajax({
        url: "http://www.example.net",
        type: "POST",
        error: function(jqXHR, textStatus, errorThrown) 
        {
            alert(errorThrown);
        },
        success: function(data,textstatus,jqXHR)
        {
            alert("Success");
        }

    });
    e.preventDefault();
});

您需要执行以下操作:

$('a').click( function(e) {
    e.preventDefault();
    var url = "your link";
    $.ajax({
       url: url,
       success: function(data)
       {
           alert(data); // show response.
       }
    });
    return false; 

});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM