<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:php="http://php.net/xsl">
<xsl:output method="html" encoding="utf-8" indent="yes" omit-xml-declaration="yes" media-type="text/html" />
<xsl:variable name="buldings" select="document('buldings.xml')/bulding/buld"/>
<xsl:variable name="buldAUD" select="document('buldAUD.xml')/buldAUD/buldingAUD"/>
<xsl:variable name="departments" select="document('departments.xml')/department/depart"/>
<xsl:variable name="departAUD" select="document('departAUD.xml')/depAUD/departAUD"/>
<xsl:include href=""/> <!--обязательный первый пустой инклюд для того, чтобы движок подключил сюда templates/common.xslt-->
<xsl:variable name="dummy-img-dir" select="concat(/page/http-root, '/module/img')"/> <!--переменная, где находятся картинки, стили и скрипты модуля-->
<xsl:variable name="href-to-dummy" select="concat(/page/http-root, '/')"/>
<xsl:template match="page[@mode='ajax']">
ЗДЕСЬ ЗДАНИЕ ЗДОРОВЬЕ
</xsl:template>
<xsl:template name="content">
<xsl:apply-templates select='module'/>
</xsl:template>
<xsl:template match="module">
<form id="search">
<div>
<div style="vertical-align:0px;">
размер аудитории (не менее) <input type="text" name="capacity" size="5" id="capacity"/>
</div>
</div>
<br/>
этаж<div class="uniq5" style="display:inline;">
<input type="text" name="floor[]" size="5" id="floor"/><!-- "SELECT .. WHERE floor IN (". join(' , ', $_GET['floor']).");" -->
<img class= "addfield" title="добавить строчку" src="plus.png" onclick="" />
<img class= "delfield" title="удалить строчку" src="minus.png" />
</div>
<br/>
<br/>
корпус<select name="bulding" multiple="true" id="bulding">
<xsl:for-each select="$buldAUD">
<option value='{@aud}'>
<xsl:variable name="buildAUD" select="@aud"/>
<xsl:value-of select="$buldings[@num=$buildAUD]"/>
</option>
</xsl:for-each>
</select>
кафедра<select name="department" multiple="true" id="department">
<xsl:for-each select="$departAUD">
<option value='{@daud}'>
<xsl:variable name="departAUD" select="@daud"/>
<xsl:value-of select="$departments[@num=$departAUD]"/>
</option>
</xsl:for-each>
</select>
<br/>
<br/>
<input type = "submit" name="view_res" value = "Показать результаты" />
</form>
<div id="rezultat">
<xsl:for-each select="/root/audit/aud">
<table>
<tr>
<td align="center">
<input type="hidden" name="id" value="{@id}"/><xsl:value-of select="@capacity" />
</td>
<td align="center">
<xsl:value-of select="@name" />
</td>
<td align="center">
<xsl:value-of select="@floor" />
</td>
<td align="center">
<xsl:variable name="building" select="@bulding"/>
<xsl:value-of select="$buldings[@num=$building]" />
</td>
<td align="center">
<xsl:variable name="department1" select="@department"/>
<xsl:value-of select="$departments[@num=$department1]" />
</td>
<td align="center">
<a href="redact_data.php?id={@id}">Редактировать</a>
<a href="delete.php?id={@id}">Удалить</a>
</td>
</tr>
</table>
</xsl:for-each>
</div>
<script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
<script type="text/javascript" src="js/jquery-ui-1.7.1.custom.min.js"></script>
<script type="text/javascript" src="js/i18n/ui.datepicker-ru.js"></script>
<script type="text/javascript" src="js/script.js"></script>
<script type="text/javascript">
$('img.addfield').click(function()
{
var s = $(this).parents('.uniq5');
s.clone(true).insertAfter(s);
});
$('img.delfield').click(function()
{
if($('div.uniq5').size() > 1)
$(this).parent().remove();
});
//$('#search').submit(function()
{
// $.ajax(
// {
// type: "POST",
// url: "<xsl:value-of select="${href-to-dummy}"/>ajax/",
// data: "capacity="+$("#capacity").val(),
// success: function(html){
// $("#rezultat").html(html);
// }
// });
// return false;
//});
</script>
</xsl:template>
</xsl:stylesheet>
Изначально мне нужно вывести просто форму поиска, без результатов. После нажатия на кнопку показать результаты, полученные из пхп скрипта данные нужно отобразить в <div id="rezultat">.
Как правильно для этого оформить ajax скрипт? Подскажите, пожалуйста, совсем запутался(
Спустя 1 час, 16 минут, 36 секунд (4.06.2010 - 11:16) mamant написал(а):
забыл уточнить, в пхп скрипте данные через DOМ в xml формируются...т.е. получается аякс должен хмл данные обратно получить?
Спустя 2 минуты, 26 секунд (4.06.2010 - 11:18) twin написал(а):
Спустя 23 часа, 19 минут, 54 секунды (5.06.2010 - 10:38) mamant написал(а):
без использования того класса как можно реализовать?
я попробовал так:
фаирбаг ругается в этом месте:
я попробовал так:
function view_rez(e, capacity, view_res)
{
$.ajax(
{
type: "POST",
url: "<xsl:value-of select="$href-to-dummy"/>ajax/",
data: { action:'view_res', capacity: capacity }
success: $('#rezultat').ajaxSuccess(function(e) {
$(this).text(e.type);
});
});
}
фаирбаг ругается в этом месте:
<input type = "button" value = "Показать результаты" onclick="view_rez(event, {@capacity}, 'view_res')" />
точнее:
onclick="view_rez(event, {@capacity}, 'view_res')"
Спустя 3 часа, 22 минуты, 56 секунд (5.06.2010 - 14:01) Michael написал(а):
Цитата |
без использования того класса как можно реализовать? |
ты же jQuery используешь - тебе тот класс нужен так же как рыбке - зонтик
Цитата |
onclick="view_rez(event, {@capacity}, 'view_res')" |
{@ - Это что такое? Или наугад?
Цитата |
success: $('#rezultat').ajaxSuccess(function(e) { |
Это что такое? success всегда функцией была.
В общем учим основы уважаемый.
Спустя 3 часа, 23 минуты, 43 секунды (5.06.2010 - 17:25) mamant написал(а):
{@capacity} - в xsl'е значение подставляю.
_____________