2011-10-17 7 views
0

私はMooTools 1.4を使用しています。ページにスクリプトタグを動的に含めるにはどうすればよいですか?下記のAjax requsetからの応答は、タグを含めることになって...AjaxリクエストにJavascriptスクリプトタグを含めるにはどうすればよいですか?

window.addEvent('domready', function() { 
    $('submit').addEvent('click', function(event) { 
     var filename = $('filename').value; 
     //prevent the page from changing 
     event.stop(); 
     //make the ajax call 
     var req = new Request({ 
      method: 'get', 
      url: 'renderpage?id=' + escape(filename), 
      data: { }, 
      evalScripts: true, 
      onRequest: function() { 
       // on request 
      }, 
      onComplete: function(response) { 
       $('content').set('html',response); 
       // Add the Ajax call where we save the data. 
       ... 
       }); 
      } 
     }).send(); 
    }); 
}); 

しかし、私は応答を見たとき、彼らは取り除かなっています。私はそれらを含め、評価したいと思います。これどうやってするの?

+0

がどのように応答を見ていますか?このような場合、ブラウザは '

2

使用Request.HTMLを行うことができます

var new_html='(html)'; 

のように、反応して、いくつかの変数にHTMLを設定することができます。 onCompleteに渡さ

var req = new Request.HTML({ 
     url: 'renderpage?id=' + escape(filename), 
     update: $('content'), 
     onRequest: function() { 
      // on request 
     } 
    }).get(); 
+0

Y Uいいえ理由を説明するdownvote ?? :/ – MattiSG

+0

+1数年後...あなたは私に非常にきれいなソリューションを提供しました!ありがとう、これはより多くupvotedされ、受け入れられた答えであるべきです! – Shautieh

-1

パラメータは次のとおりです。だから、

nodeTree, xhr, responseHTML, responseScripts

new Request.HTML({ 
    // ... 
    onComplete : function(nodeTree, xhr, responseHTML, responseScripts) { 
    eval(responseScripts); 
    } 
}); 
+0

なぜそれらを評価するのですか? [HTML.Request doc](http://mootools.net/docs/core/Request/Request.HTML)を参照してください:_ "evalScripts - (ブール値:デフォルトはtrue)trueに設定すると、応答内のスクリプトタグは評価される。これは、Requestからの誤ったデフォルトを上書きします。 "_ – MattiSG