2012-01-16 4 views
0

Я создал приложение для Android jquerymobile, и все работает хорошо, кроме проблемы с отправкой формы, которая сводит меня с ума.Phonegap/JQuery Мобильное приложение для Android - представление формы, влияющее на навигацию

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

Это моя форма

<form class="srchForm" action="searchThis()"> 
    <input type="search" class="srchInput"> 
    <div class="clearBtn"><span class="hidden">Clear</span></div> 
    <div class="srchBtnOne"><span class="hidden">Search</span></div> 
</form> 


function searchThis() { 

    event.preventDefault(); 

    var inputDetails= $('.srchInput').val(); 

    $('.srchRes').empty(); 
    $('.srchRes').append('<iframe frameborder="0" scrolling="no" width="300" frameborder="0" src="http://uc.dialogue.netsrch.jsp?query='+inputDetails+'&searchMode=any&indexGroup=" style=" border:none;background:#FFF; overflow:none; width:300px;"></iframe>'); 
} 

Я думал, я бы решил эту проблему с event.preventDefault(); но его все еще вызывающие проблемы. Может ли кто-нибудь предложить что-нибудь?

веселит Пол

ответ

0

Рамки JQuery Mobile, вероятно, еще привет-подъемное представление формы для его собственной обработки AJAX представления формы. Для того, чтобы остановить это либо отключить обработку AJAX форм глобально или отключить AJAX на форме индивидуально, как это:

<form class="srchForm" action="searchThis()" data-ajax="false"> 
    <input type="search" class="srchInput"> 
    <div class="clearBtn"><span class="hidden">Clear</span></div> 
    <div class="srchBtnOne"><span class="hidden">Search</span></div> 
</form> 
+0

Спасибо Jasper, data-ajax = "false" только что вызвало приложение для меня из-за меня по какой-то причине - я решил это с исправлением ключа выше в конце концов. Спасибо за попытку, хотя .. – Dancer

0
Try this: 

$(document).delegate("#index", "pageshow",function(event){ 
     $('#index #searchForm').bind('submit',function(e) { 
      e.preventDefault; 
     }); 
     $("#index #searchformbtn").unbind("blur"); 
     $("#index #searchformbtn").bind('blur',function(event){ 
      var inputDetails= $('.srchInput').val(); 
     $('.srchRes').empty(); 
     $('.srchRes').append('<iframe frameborder="0" scrolling="no" width="300" frameborder="0" src="http://uc.dialogue.netsrch.jsp?query='+inputDetails+'&searchMode=any&indexGroup=" style=" border:none;background:#FFF; overflow:none; width:300px;"></iframe>'); 
      return false; 
     }); 
    }); 
+0

Приветствия за помощь, но не удача, к сожалению, форма на самом деле на странице под названием srch, я изменил ваш код выше, чтобы соответствовать, но он все равно отправляет приложение на домашнюю страницу .. – Dancer

1

это был единственный способ, которым я мог бы решить эту проблему -

$(window).keydown(function(event){ 
    if(event.keyCode == 13) { 
    event.preventDefault(); 
    searchThis() 
    return false; 
} 
}); 

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

  • Нет связанных вопросов^_^