Hej,
jag försöker komma ifrån frames som välkänt är hatat bland dagens webdesigners och istället för att ladda om hela sidan varje gång så vill jag bara ladda om en div. Har hittat ett script som funkar bra förutom att den byter ut å, ä, ö mot skumma tecken, funkar varken i FF eller IE.
Scriptet är lite overkill för mitt ändamål då den kan ladda om objekt som .js och .css också vilket jag inte behöver. men iaf, ÅÄÖ funkar INTE!
Jag är inte haj på det här med AJAX så jag vet inte vad som e fel :/
scriptet:
<script type="text/javascript">
/***********************************************
* Dynamic Ajax Content- © Dynamic Drive DHTML code library (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
***********************************************/
var loadedobjects="";
var rootdomain="http://"+window.location.hostname;
function ajaxpage(url, containerid){
var page_request = false;
if (window.XMLHttpRequest) // if Mozilla, Safari etc
page_request = new XMLHttpRequest();
else if (window.ActiveXObject){ // if IE
try {
page_request = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e){
try{
page_request = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e){}
}
}
else
return false;
page_request.onreadystatechange=function(){
loadpage(page_request, containerid);
}
page_request.open('GET', url, true);
page_request.send(null);
}
function loadpage(page_request, containerid){
if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1))
document.getElementById(containerid).innerHTML=page_request.responseText;
}
function loadobjs(){
if (!document.getElementById);
return;
for (i=0; i<arguments.length; i++){
var file=arguments[i];
var fileref="";
if (loadedobjects.indexOf(file)==-1){ //Check to see if this object has not already been added to page before proceeding
if (file.indexOf(".js")!=-1){ //If object is a js file
fileref=document.createElement('script');
fileref.setAttribute("type","text/javascript");
fileref.setAttribute("src", file);
}
else if (file.indexOf(".css")!=-1){ //If object is a css file
fileref=document.createElement("link");
fileref.setAttribute("rel", "stylesheet");
fileref.setAttribute("type", "text/css");
fileref.setAttribute("href", file);
}
}
if (fileref!=""){
document.getElementsByTagName("head").item(0).appendChild(fileref)
loadedobjects+=file+" " //Remember this object as being already added to page
}
}
}
</script>
länk skrivs:
<a href="javascript:ajaxpage('sida.html', 'container_page');">Sida</a>