2010-06-16 2 views
1

서버에서 일부 RSS 피드 스크립트를 검색하는 Ajax 함수가 있습니다. 나는이 응답 문자를 div에 넣는다 :javascript as response text

$("#divId").html(responsetext); 

응답 내에서 스크립트를 실행하고 싶다. 현재 RSS 피드는 div에 표시되지 않습니다. 그것을 할 방법이 있습니까? 감사합니다 ...

responsetext 
------------- - 

<div class="last-updated" style="display: block" id="p-lastUpdated">Last Updated:16 Jun 2010 10:32 AM</div> 

<div id="digg-widget-1276598296115"> 

<a href="http://digg.com/search?s=timesofindia.indiatimes.com">See more timesofindia.indiatimes.com stories.</a> 

</div> 

<script type="text/javascript"> 

(function() { var s, s1, diggWidget = {id: "digg-widget-1276598296115", layout: 1, colors: {hdrBg: "#1b5790", hdrTxt: "#b3daff", tabBg: "#4684be", tabTxt: "#b3daff", tabOnTxt: "#d41717", bdyBg: "#fff", stryBrdr: "#ddd", lnk: "#105cb6", descTxt: "#999999", subHd: "#999999"}, title: "RSS Times of india", width: 480,height: 300, requests: [{t: "timesofindia.indiatimes.com", p: {count: "10", sort: "promote_date-desc", method: "story.getPopular", domain: "timesofindia.indiatimes.com"}}], hide: {footer: true, header: true}, target: "_blank", descriptions: "show", rounded: true}; if (window.DiggWidget) { if (typeof DiggWidget == 'function') { new DiggWidget(diggWidget); } else { DiggWidget.push(diggWidget); } } else { DiggWidget = [diggWidget]; s = document.createElement('SCRIPT'); s.type = 'text/javascript'; s.async = true; s.src = 'http://widgets.digg.com/widgets.js'; s1 = document.getElementsByTagName('SCRIPT')[0]; s1.parentNode.insertBefore(s, s1); } })(); 

</script> 
+1

에서 내 대답은 다른 도메인에 잡고있는 RSS 피드인가? –

+0

안녕하세요 닉, 같은 도메인에서입니다 – Aneesh

+0

응답 안의 스크립트에 악성 코드가 포함되어 있지 않은지 반드시 확인해야합니다. –

답변

0

How To Call Javascript In Ajax Response? IE: Close a form div upon success

// response is the data returned from the server 
var response = "html\<script type=\"text/javascript\">alert(\"foo\");<\/script>html"; 
var reScript = /\<script.*?>(.*)<\/script>/mg; 
response = response.replace(reScript, function(m,m1) { 
    eval(m1); //will run alert("foo"); 
    return ""; 
}); 
alert(response); // will alert "htmlhtml" 
+0

안녕하세요, Sean, 답변 해 주셔서 대단히 감사합니다.하지만 제 경우에는 작동하지 않습니다. 응답 텍스트로 질문을 업데이트했습니다. – Aneesh

+0

' 작동 안함'? –

0

응답은 HTML과 JavaScript 또는 순수한 자바 스크립트를 혼합합니까?

순수 자바 스크립트 인 경우 항상 코드를 실행하는 eval("alert('Test');") 함수를 사용할 수 있습니다.

+0

HTML과 JavaScript가 섞여 있습니다. : ( – Aneesh