在Javascript / Jquery中不在浏览器上打开它来执行URL

问题描述 投票:1回答:2

我有一个本地页面从数据库中提取数据并发送一条消息。所以我试图在另一个函数的“success”上使用javascript执行此页面。问题是我尝试过的所有东西似乎都没有执行那个页面,而我执行该页面时唯一的成功就是使用弹出的窗口,这是不可取的。

这是弹出代码(不需要的):

function sendMsg(){
    var wnd = window.open("http://localhost/url");
    if(wnd){
            setTimeout(function () { wnd.close();}, 4000);
    }
}
sendMsg();

这些是我尝试但没有执行url的代码:

$.get("http://localhost/url")

而这一个来自另一个答案在这里SO。

var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange=function() {
  if (xmlhttp.readyState==4 && xmlhttp.status==200) {
    var response = xmlhttp.responseText; returned value
  }
}

xmlhttp.open("GET","http://localhost/url",true);
xmlhttp.send();

如何在不以任何方式在浏览器上打开此URL的情况下执行此URL?为了清楚起见,我知道其他两个代码不起作用,因为我会收到一条消息。

javascript jquery ajax get
2个回答
1
投票

我相信jQuery的load()方法可能对此有用。例如,在HTML中使用div并将其设置为隐藏在CSS中。

jQuery load() Method

HTML:

<div id='myHiddenPage'></div>

CSS:

#myHiddenPage { 
    display: none;
} 

jQuery的:

$(funtion() {
    $('#myHiddenPage').load('www.myurl.com');
});

2
投票

如果你真的需要来自get的返回数据/页面

你应该做这样的事情。

$.get( "url", function( data ) {
  console.log(data); // return data/page
  alert( "Done load." );
});

@使用ajax

$.ajax({
  url: "url",
  type: "GET",
  success   : function( data ){
    console.log(data); // return data/page
    alert("Done LOad");
  }
});

其他任何东西都可以参考:https://api.jquery.com/jquery.get/

© www.soinside.com 2019 - 2024. All rights reserved.