כן בעיה ידועה, תוסיף את זה לסקריפט שקורא ל ajax:
HTML קוד:
// evaluate javascript
scriptTag='(<script.*?>)((\n|\r|.)*?)(<\/script>)';
if (scripts=resultsuser.match(scriptTag))
{
// remove slashes
scripts[2]=scripts[2].replace(/\\/g,"");
//run scripts
eval(scripts[2]);
}
דוג' לשילוב בקוד קריאה ל ajax:
HTML קוד:
//Browser Support Code
function call_ajax(DivUpdate,PageOpen,GetString)
{
var ajaxRequest; // The variable that makes Ajax possible!
try
{
// Opera 8.0+, Firefox, Safari
ajaxRequest = new XMLHttpRequest();
}
catch (e)
{
// Internet Explorer Browsers
try
{
ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e)
{
// Something went wrong
alert("Your browser broke!");
return false;
}
}
}
// Create a function that will receive data sent from the server
ajaxRequest.onreadystatechange = function()
{
var ajaxDisplay = document.getElementById(DivUpdate);
if (ajaxRequest.readyState == 0 || ajaxRequest.readyState == 1 || ajaxRequest.readyState == 2 ||
ajaxRequest.readyState == 3 )
{
loading = new Image(); loading.src = "template/themes/images/loading.gif";
document.getElementById(DivUpdate).innerHTML = "<img src='template/themes/images/loading.gif' id='loading' />";
}
if(ajaxRequest.readyState == 4)
{
ajaxDisplay.innerHTML = ajaxRequest.responseText;
resultsuser = ajaxRequest.responseText;
// evaluate javascript
scriptTag='(<script.*?>)((\n|\r|.)*?)(<\/script>)';
if (scripts=resultsuser.match(scriptTag))
{
// remove slashes
scripts[2]=scripts[2].replace(/\\/g,"");
//run scripts
eval(scripts[2]);
}
}
}
ajaxRequest.open("GET",PageOpen + GetString, true);
ajaxRequest.send(null);
}