2014-01-29 2 views
0

У меня есть форма, встроенная в Wordpress. Форму можно увидеть здесь:Форма с валидацией не вызывает действие формы

http://yellowsheetcoupons.net/get-emailed-coupons/

Первые три поля должны быть введены, то для вызова страницы обработки для хранения данных в моей базе данных. Прямо сейчас, у меня просто есть тестовая страница, которая должна эхо «Отправлено».

Проблема в том, что страница PHP никогда не вызвана. Любая идея о том, почему? Вы можете увидеть код формы и функцию проверки JS, если вы перейдете на страницу.

Спасибо,

  • Джо
+0

Вы можете вставить соответствующий код здесь? Здесь легче читать, чем следить за ссылкой для многих пользователей. – thunderblaster

ответ

0

Ну, вы на самом деле получения "Передано" вернулся с сервера. Однако, проблема в том, что при этом:

data = $.parseJSON(data); // data contains "submitted" 

в обработчике ответ AJAX, вы ждете, чтобы получить правильный объект JSON с вашей страницы test.php. Действительный ответ JSON будет иметь формат:

{"success": "Submitted"} 

FYI, я проверил это, открыв консоль JavaScript при попытке отправить форму, и ошибка ясно видно там.

enter image description here

Таким образом, одно решение попытаться возвращать правильный объект JSON вместо:

<?php 
    echo json_encode(array("success" => "submitted")); 
?> 

Я не могу запустить PHP, чтобы проверить это, но вы получите суть. Надеюсь, это поможет!

Смежные вопросы