библиотека XAJAX

dem_ua

Новичок
библиотека XAJAX

возник такой вопрос при использовании XAJAX
$objResponse->addAssign("some_div", "innerHTML", "blabla");
заменяет весь текст слоя some_div на blabla

как сделать чтобы он добавлялся к текущему? по ходу в xajax это вообще не реализовано?

или гонять трафик путем выборки текста из дива и прилепливания его?
 

Mavir

Новичок
У класса xajaxResponse есть еще и другие методы, например, addScriptCall или addScript. С помощью их можешь организовать добавление текста в слой.
 

dem_ua

Новичок
и каким жеж макаром :) ? что мне даст свойство вставки скрипта в слой?
 

Mavir

Новичок
А проявить смекалку ;)

$objResponse->addScript('document.getElementById("some_div").innerHTML=document.getElementById("some_div").innerHTML+"Your text"');

Если через addScriptCall, то нужно предварительно на страницу вписать функцию, которая добавляет к innerHTML передаваемый текст.

function myJSFunction(txt){
document.getElementById("some_div").innerHTML=document.getElementById("some_div").innerHTML+txt;
}

$objResponse->addScriptCall("myJSFunction", "Your text");
 

Nicca

Новичок
А как сделать чтобы в
<select>
вставить результат выполнения запроса?
</select>
 

RoLex

Новичок
Автор оригинала: Nicca
А как сделать чтобы в
<select>
вставить результат выполнения запроса?
</select>
переписав пример из xajax helloworld.php
вот что получается.
например так.
PHP:
<?
require ('xajax05beta1/xajax_core/xajax.inc.php'); // путь к твоей директории где лежить xajax.inc.php
// getData() - тут можешь прописать получение данных из БД
function getData()
{	
	$myData = array(1,2,3,4); // допустим полученные данные такие
	
	return $myData;
}

function putDataInSelect()
{
	$objResponse = new xajaxResponse();
	
	$getData = getData();
// формируем тэг <select>
	$select .= '<select id="select" name="select">';

	for($i=0; $i < sizeof($getData); $i++)
	{
		$select .= '<option value="'.$getData[$i].'">'.$getData[$i].'</option>';
	}
	$select .= '</select>';

	$objResponse->assign("div","innerHTML", $select); // заменяем <select> который был на странице, на сформированный
	
	return $objResponse;
}
$xajax = new xajax(); 
$xajax->registerFunction("putDataInSelect");
$xajax->processRequest();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
	<title>xajax example</title>
	<?php $xajax->printJavascript('xajax05beta1/'); // output the xajax javascript. This must be called between the head tags ?>
</head>
<body style="text-align:center;">
	<br/>	
	<button onclick="xajax_putDataInSelect()" >Click Me</button>
	<div id="div">
	<select id="select" name="select">
           <option value="">что-то по умолчанию</option>
	</select>

</body>
</html>
 
Сверху