2011-07-24 11 views
0

このコードはインターネット上に見つかりましたが、動作しているようですが、DIVに読み込まれるファイルには常に同じメッセージが表示されます"オブジェクトが見つかりませんでした"ファイルをロードするために正確に何をする必要がありますか?DIVの内容を置換するJavascript、外部のファイル名を正しく取得できない

これは... HTMLコードです

<a href="javascript:void()" onclick="javascript:sendRequest('sourcepage?id=34', 'targetdiv')">Link Text</a> 
<div id="targetdiv">This is the target</div> 

だから... ...私は右のそれを得るために、 "sourcepage?ID = 34" のファイルに名前を付けるために何を持っています

?これまで私は "id34.html" "sourcepage-34.html"と同様のものを試しましたが、うまくいかないようです。

スクリプト:

function createRequestObject() 
{ 
    var returnObj = false; 

    if(window.XMLHttpRequest) { 
     returnObj = new XMLHttpRequest(); 
    } else if(window.ActiveXObject) { 
     try { 
      returnObj = new ActiveXObject("Msxml2.XMLHTTP"); 

      } catch (e) { 
      try { 
      returnObj = new ActiveXObject("Microsoft.XMLHTTP"); 
      } 
      catch (e) {} 
      } 

    } 
    return returnObj; 
} 

var http = createRequestObject(); 
var target; 

// This is the function to call, give it the script file you want to run and 
// the div you want it to output to. 

function sendRequest(scriptFile, targetElement) 
{ 
    target = targetElement; 
    try{ 
    http.open('get', scriptFile, true); 
    } 
    catch (e){ 
    document.getElementById(target).innerHTML = e; 
    return; 
    } 
    http.onreadystatechange = handleResponse; 
    http.send();  
} 

function handleResponse() 
{ 
    if(http.readyState == 4) {  
    try{ 
     var strResponse = http.responseText; 
     document.getElementById(target).innerHTML = strResponse; 
     } catch (e){ 
     document.getElementById(target).innerHTML = e; 
     } 
    } 
} 

私はこれは私が私の人生でやった最も愚かな質問...それと事前に感謝を気の毒だと思う:D

+0

divにロードする内容は何ですか? – marc

+0

どちらのコードであるのか分かりにくいですが、コード中の 'Object'の中には' undefined'があります。あなたはそれがどれであるかを知る必要があります。これを行うには、コードにエラーが発生した場所を示す行を追加するか、FirebugをインストールしたFirefoxを使用する必要があります。 – FK82

+0

外部HTMLを読み込み、それをリンク付きのDIVにロードしたいのですが、Firebugでエラーが表示されません。 – Liuny

答えて

0

まあファイル名あなたが使用しようとしている拡張子を持っていない。他のサーバーの構成によっては、さまざまな種類のファイルに再ルーティングできます。 "?id = 34"はurlパラメータであり、ファイル名とは関係ありません。

<a href="javascript:void()" onclick="javascript:sendRequest('myFile.html', 'targetdiv')">Link Text</a> 
<div id="targetdiv">This is the target</div> 

ファイルの名前をmyFile.htmlとし、上記のHTMLと同じフォルダに置きます。 jQueryをオプションとして使用している場合は、これをお勧めします。

$('#targetdiv').load('myFile.html', function(){ 
    // code to execute once the HTML is loaded into your div 
}); 
関連する問題