jQuery Мобильная форма отправки на нескольких страницах с CakeStack Overflow

Я надеюсь, что мне не хватает чего-то простого здесь. У меня есть веб-сайт CakePHP, с которым я использую jQuery mobile. Я думаю, что CakePHP может иметь к этому какое-то отношение, но я не уверен.

В любом случае, у меня есть форма, которую я создал на странице просмотра для добавления комментариев. Вызов Ajax работает должным образом на первой загружаемой странице, но переход на любую другую страницу предотвращает отправку данных. Консоль по-прежнему регистрирует «данные» каждый раз, когда я нажимаю кнопку (после использования «pagebeforeshow», как рекомендовано где-то еще), однако, похоже, это данные с исходной загруженной страницы (я знаю это, потому что в настоящее время я отлаживаю $ this-> запрос-> данные на странице действий формы).

Ясно, что мне нужно как-то «сбросить» форму при перемещении по страницам, но я не уверен, возможно ли это без обновления страницы. Я знаю о «data-ajax» = «false» и «rel» = «external», которые можно использовать в качестве крайней меры, но я хочу избежать обновления страницы, если смогу.

Какие-либо предложения? Спасибо.

Вот JS, который я использую для вызова Ajax

//<![CDATA[
$(document).on('pagebeforeshow', function(){
$(document).off('click', '#comment_add').on('click', '#comment_add',function(e) {
$.ajax({
async:true,
data:$("#sCommentViewForm").serialize(),
dataType:"html",
success:function (data, textStatus) {
//$('#comments').remove();
//$('<div id="comments"></div>').appendTo('#comments_container');
$("#comments").html(data).trigger('create');
//$('#comments_box').remove();
//$('<div id="comments_box"></div>').appendTo('#comments_container');
console.log(data);
},
type:"POST",
url:"commentsUsers/comment_add/<? echo $template['Template']['id']; ?>"});
return false;
});
});
//]]>
</script>

0

Решение

Это был мой основной недостаток понимания. После долгих поисков этот простой пост оказался наиболее полезным:

Jquery Mobile Javascript не работает при загрузке AJAX

По сути, я использовал идентификаторы для всего — когда я переключился на имена классов, это было гладко.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]