Я пытаюсь отправить некоторые данные через dojo.xhrPost в действие Zend Controller. Я вижу данные, отправляемые в консоли Firebug. Однако при проверке данных записи массив пуст.
Я не уверен, возможно ли отправить произвольную строку данных через dojo.xhrPost без использования формы. Это, вероятно, очень большая ошибка. В любом случае, я выложу свой код здесь и посмотрю, что вы все думаете.
В моем скрипте макета у меня есть:
<?php
$sizeurl = $this->baseUrl() . '/account/uisize';
?>
function resizeText(multiplier)
{
if (document.body.style.fontSize == "")
{
document.body.style.fontSize = "1.0em";
}
document.body.style.fontSize = parseFloat(document.body.style.fontSize) + (multiplier * 0.1) + "em";
var size = document.body.style.fontSize;
var xhrArgs = {
url: "<?= $sizeurl; ?>",
postData: size,
handleAs: "text"
}
dojo.xhrPost(xhrArgs);
}
Тогда мое действие:
public function uisizeAction()
{
$this->_helper->viewRenderer->setNoRender();
$this->_helper->layout->disableLayout();
print_r($_POST);
$request = $this->getRequest();
if ($request->isXmlHttpRequest())
{
$postdata = $request->getPost();
print_r($postdata);
if ($postdata)
{
$user = new Application_Model_DbTable_User();
$user->updateSize($postdata);
}
}
}
Я почти уверен, что данные публикации из формы - это массив с именами элементов формы в качестве ключей. При просмотре примеров dojo.xhrPost на веб-сайте кампуса dojo (точнее, http://docs.dojocampus.org/dojo/xhrPost) я вижу, что могу просто отправить строку данных. Как получить доступ к этим данным из действия Zend Controller?
Я использую ZF 1.10 и Dojo 1.4.2
Спасибо за вашу помощь!
PS
Я постараюсь задать один из связанных вопросов, но я не могу комментировать.