parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Подробности

Rafael 21.08.2007 13:27

Имеем следующие файлы:
Тестовый файл/ajax.html
...
<script language="JavaScript" src="/scripts/com/blog-lib.js"></script>
...
<form onsubmit="return false" id="form1">
	<textarea cols="50" rows="5" id="reply1ta"></textarea>
	<input id="cpb2" type="button" onclick="зreviewComment(1)" value="Preview">
	<input id="cpb2" type="button" onclick="PreviewComment2(1)" value="Preview2">
</form>

<div id="previewa1" style="border:1px solid #000; margin:2px"></div>
Далее, имеем parser-обработчик /classes/ajax/post.html:
@USE
JSHttpRequest.p

@main[]
$hRequest[^JSHttpRequest:decodeRequest[]]

$hParserVariable[
   $.result[^untaint{$hRequest.q}]
]

^JSHttpRequest:printResponse[message;$hParserVariable]
и JS-код /scripts/com/blog-lib.js:
var postParser = '/classes/ajax/post.html';

// это работает...
function previewComment(id) {
	var query = '' + document.getElementById('reply' + id + 'ta').value;
	var req = new Subsys_JsHttpRequest_Js();

	req.onreadystatechange = function() {
		if (req.readyState == 4) {
			if (req.responseJS) {document.getElementById('preview' + id).innerHTML = unescape(req.responseJS.result);}
		}
	}
	req.caching = false;
	req.open('POST', postParser, true);
	req.send( { q: query, test: 303 } );
}

var PreviewCommentID = 0;

// а это не работает....
function PreviewComment2(id){
	PreviewCommentID = id;
	
	new Ajax.Updater('previewa1',
		'/classes/ajax/post.html',
		{asynchronous: true, 
		parameters: Form.serialize($('form' + id))}); 
}
в упор не вижу что делать...