Официальный сайт студ.городка НГТУ
Программирование и БД » [javascript]Как без релода выполнить левый скрипт? 

#1  04.05.07 09:27

[javascript]Как без релода выполнить левый скрипт?

нашёл на одном сайте функцию,не могу её понять:
function execInternalScript(url) {
    var scriptObj = document.createElement("script");
    scriptObj.src = url;

    var placerObj = document.body.firstChild;

    do {
        if(placerObj.nodeType == 1) {
            placerObj.appendChild(scriptObj);
            break;
        }
    } while(placerObj = placerObj.nextSibling);
}
а допустим url = "/to_bd/index.php?id=4";

Offline

#2  04.05.07 09:50

Re: [javascript]Как без релода выполнить левый скрипт?

а с полным урлом пробовал? )

Offline

#3  04.05.07 09:51

Re: [javascript]Как без релода выполнить левый скрипт?

и ваще это для js

Offline

#4  04.05.07 10:05

Re: [javascript]Как без релода выполнить левый скрипт?

<img src="idrum-scriptkiddie" onerror="return false" />

Offline

#5  04.05.07 10:45

Re: [javascript]Как без релода выполнить левый скрипт?

Гороховый суп написал(а):

и ваще это для js

ты гений :)

Offline

#6  04.05.07 10:45

Re: [javascript]Как без релода выполнить левый скрипт?

про., факю,клоун

Offline

#7  04.05.07 12:00

Re: [javascript]Как без релода выполнить левый скрипт?

твоя функция загружает произвольный код в текущий документ, а урл, который надо указать - это урл подгружаемого кода.
например есть скриптовый файл external.js в папке /includes/js/
тогда в документе надо сделать такой вызов:

Код: javascript:

execInternalScript("/includes/js/external.js");
// а потом функцию, которую подгрузил :)

Offline

#8  04.05.07 16:04

Re: [javascript]Как без релода выполнить левый скрипт?

A-Lex, понятна..не то эта..

Offline

#9  12.05.07 11:34

Re: [javascript]Как без релода выполнить левый скрипт?

ну вот так сдедали:

Код: html:

<head>
<script type="text/javascript" src="./js/script.js"></script>
</head>
<a href="" onclick="javascript: wer('49');return false;">Тест</a>

Код: javascript:

function wer(id) {
        server = 'server2/~test/';
        d=window.document;
        h=d.getElementsByTagName('head').item(0);
        s=d.createElement('script');
        if(typeof(s)!='object')
        	{
            	s=d.standardCreateElement('script');
        	}
        s.setAttribute('src','http://'+server+'/js/test.php?id='+id);
        s.setAttribute('type','text/javascript');
        s.setAttribute('language','javascript');
        s.setAttribute('charset','CP-1251');
        h.appendChild(s);
	}

Код: test.php:

alert(id);
<?
echo "alert('$id')";
?>


оба алерта работают

Исправлено iDrum (12.05.07 11:34)

Offline

#10  13.05.07 10:20

Re: [javascript]Как без релода выполнить левый скрипт?

iDrum, почитай PHPInside про AJAX... это как раз по твоей теме... там еще есть статейка про передачу данных без XML...

Offline

#11  13.05.07 12:17

Re: [javascript]Как без релода выполнить левый скрипт?

главное нада было не просто без релоада,а пхпешный скрипт ешё заюзать..

Offline

#12  14.05.07 10:10

Re: [javascript]Как без релода выполнить левый скрипт?

iDrum, учи js, потом про ajax почитай.

Offline

Программирование и БД » [javascript]Как без релода выполнить левый скрипт? 

ФутЕр:)

© Hostel Web Group, 2002-2025.   Сообщить об ошибке

Сгенерировано за 0.072 сек.
Выполнено 14 запросов.