Получение переменной из webpy POST через jQuery.ajax - PullRequest
0 голосов
/ 08 декабря 2011

В моем веб-приложении у меня есть функция:

def POST (self):
        signal = web.input()['signal']
        if signal == 'next':
            errMessage = self.cinstall.testConnection()
            print signal
            print errMessage
            return errMessage

В соответствии с консолью Python он работает правильно; он получает и возвращает строки, как я ожидаю.

В шаблоне у меня есть такой скрипт:

<script src="/static/jquery-1.7.1.min.js" type="text/javascript"></script>
<script type="text/javascript">
    $$(function() {
        var value = $$('#continue').attr('value');
        $$("#continue").click(function(){
            jQuery.ajax({
                type: "POST",
                data: {signal : value},
                success: function(html) {
                    jQuery('#errmessage').html(html).hide().fadeIn(1500);
                },
            });
        });
    });
</script>

Я знаю, что запрос выполнен успешно, потому что если я добавлю alert в обработчик success, он будет работать хорошо, но функция jQuery('#errmessage').html(html).hide().fadeIn(1500); не будет выполнена. У меня есть <p> тег с id=errmessage в моем шаблоне.

Итак, у меня есть несколько вопросов:

  1. Почему это не работает?
  2. Могу ли я изолировать данные, полученные из POST в JS для дальнейших итераций и if операторов?
  3. Могу ли я поместить if операторы в функцию успеха jQuery.ajax?

К сожалению, API jQuery предоставляет ограниченную информацию о success().

...