2017-12-19 8 views
1

データベースからデータを取得してメッセージを送信するローカルページがあります。だから私はこのページを別の機能の "success"のjavascriptを使って実行しようとしています。問題は、私が試したことはすべてそのページを実行していないようだが、そのページを実行する際に成功したのは、ウィンドウのポップアップを使用していることだけである。Javascript/JqueryのブラウザでURLを開かずにURLを実行する

これは、ポップアップコード(望ましくない)である:

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

そして、これらは私が試してみたが、URLを実行していないコードです:

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

され、この1ここの別の答えから。

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をブラウザで開くことなく実行できますか? 私はメッセージを受け取ったので、他の2つのコードは機能しませんでした。

答えて

1

これはjQueryのload()メソッドが役に立ちそうです。たとえば、HTMLにdivを入れ、それをCSSで非表示に設定します。

jQuery load() Method

HTML:

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

CSS:

#myHiddenPage { 
    display: none; 
} 

のjQuery:

あなたが本当に取得

からの戻りデータ/ページが必要な場合は0

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

おかげで、あなたのコードは、魔法のように働きました。 –

+0

喜んで助けてください!これがトリックをすることを望んでいた:)。 – iPzard

1

あなたはこのような何かを行う必要があります。使用アヤックス何かを参照することができます

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

@

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

https://api.jquery.com/jquery.get/

+1

私も上記のコードを試しました、私は呼び出していたファイルからコンソールのコードを出力します。私はそれを実行したかっただけです。しかし、私はiPzardの答えから解決策を得ました –

関連する問題