2016-06-24 12 views
0

この関数でルートパスが倍増しているのはなぜですか?ここで jQueryは、load()関数でルートパスを2倍にします。

function bodyClass(id) { 
 
    var catName = $('#location').children().eq(4).text(), 
 
     rootPar = ("http://localhost/site/" + catName), 
 
     banner = $('#wantedDiv'), 
 
     
 
     // this load variable doubles up the root path and does not escape the first single quote 
 
     content = $('<div />').load("'" + rootPar + " " + banner + "'", function(){ 
 
     $('#placeDiv').prepend(content.html()); 
 
     }); 
 
     
 
     // console logging retrieves the correct path inclusing the added "catName" 
 
     console.log(rootPar); 
 

 
} 
 
bodyClass();
は、ブラウザのコンソールが私を示して何が:

にconsole.log:http://localhost/site/page

負荷()FUNC:GET http://localhost/site/ 'http://localhost/site/page' 404(未Found)

答えて

2

ページがロードされると、http://localhost/site/にロードされます。ルートWebページをもう一度追加すると、既にそこに追加されます。私はちょうどcatNamerootPar

+0

私はすでにいない運でそれをやってみました。これはGET http:// localhost/site/'Page/404(Not Found) - >最初の一重引用符をエスケープしないエラーです。 – Sergio

+0

一重引用符を削除するとどうなりますか? –

+0

私は別のエラーを取得します - > Uncogn構文エラー:認識できない式:[オブジェクトオブジェクト] ' – Sergio

0

のように追加します。同様の解決策を探している人のために考えてください。 ちょうど、変数への連結を移動しましたが、load()関数の内部ではありません。

function bodyClass(id) { 
 
    var catName = $('#location').children().eq(4).text(), 
 
     rootPar = (catName + "/ "), 
 
     banner = "'" + '#' + 'wantedDiv' + "'", 
 
     content = $('<div />').load(rootPar + banner, function(){ 
 
     $('#placeDiv').prepend(content.html()); 
 
     }); 
 

 
} 
 
bodyClass();

関連する問題