1
我正在與Zend 1一起使用dojo,不知道如何使用ajax。在我的特定情況下,當選擇一個選擇,無論是在諮詢阿賈克斯從數據庫信息回來。從用戶輸入一個ID通過ajax打印來自用戶的信息。在我的工作中,我無法使用jquery。Zend 1 ajax with dojo informatiom person
我正在與Zend 1一起使用dojo,不知道如何使用ajax。在我的特定情況下,當選擇一個選擇,無論是在諮詢阿賈克斯從數據庫信息回來。從用戶輸入一個ID通過ajax打印來自用戶的信息。在我的工作中,我無法使用jquery。Zend 1 ajax with dojo informatiom person
好問題! 與道場並不是非常有成效的工作,但有可能使你完全想要如何。您將創建p元素與數據基礎
在您的形式捕獲信息,添加屬性「的onChange」
$form->setAttrib('onChange', 'recoveryData()');
在js文件,你有一個函數recoveryData(),東西爲:
dojo.require("dojo.html");
// clean data
var myNewElement = dojo.byId('myNewElement');
if (myNewElement != null) {
dojo.empty("myNewElement");
}
dojo.xhrPost({
content: {id: dojo.attr(dojo.byId("myElement"), "value")},
url: 'your-base-path/recovery-data/',
load: function (response) {
if (response != false) {
// converte to obj
var obj = dojo.fromJson(response);
// creat new element
var node = dojo.create("span", {
innerHTML: obj.NomeServidor,
id: "myNewElement",
'class': 'row'
}
);
dojo.place(node, dojo.byId("myElement"), "after");
}
}
});
現在,你需要創建一個動作 「recoveryDataAction()」 在你的控制器是這樣的:
$data = $this->getrequest()->getPost();
$id = $data['id'];
if ($this->getrequest()->isXmlHttpRequest()) {
// disable layout
$this->_helper->layout()->disableLayout();
// disable view render
$this->_helper->viewRenderer->setNoRender();
$yourTable = new Project_Model_YourTable();
$row = $yourTable->fetchRow($id);
if ($infos != null) {
echo Zend_Json::encode($row);
return;
}
echo false;
}
它作品!!!謝謝。 –