I Löschaktion asynchron mit AJAX machen wollen, in der Steuerung mache ich eine Aktion, die die AnforderungFehler in json parsing- zend framework
public function deleteAction() {
$request = $this->getRequest();
if ($request) {
$visitId = $request->getParam('visit_id');
$mapper = new Visits_Model_VisitsMapper();
try {
$mapper->deleteVisit($visitId);
echo json_encode("1");
} catch (Exception $e) {
$this->view->message = "error inserting Data, Error details: " . $e->getMessage();
echo json_encode("0");
}
Zend_Controller_Front::getInstance()->setParam('noViewRenderer', true);
}
}
und im jquery Skript
$("a.delete").live('click',function(e){
e.preventDefault();
var data={
"visit_id":$(this).parent().parent().attr("id")
};
jQuery.ajax({
url: "/visits/visit/delete",
type: "POST",
dataType: 'json',
data: requestDate,
success: successCallback,
error:failureCallback
});
Griff Wenn ich auf die Schaltfläche Löschen klicke, wird die Anfrage gesendet und ein Popup-Fehler tritt auf.
Error <!-- application/layouts/scripts/layout.phtml -->
the whole html of layout page....
error SyntaxError: JSON.parse: unexpected character
Ich erkenne, dass die d elete Prozess ist nicht passiert !! Wenn ich synchrone Anfrage sende, ist der Löschvorgang erfolgreich verlaufen. Und auch wenn ich den AJAX-Aufruf ohne Verwendung der Layout-Seite mache, ist das Löschen erfolgreich auch erfolgreich.
Was kann der Fehler sein?
'dataType: 'jsonp',' ändern Sie das und geben Sie es noch einmal ... in der Regel behebt das Problem. – Val
Nein, es funktioniert nicht ... – palAlaa