3
我正在處理應用程序,但不會對用戶操作給出任何響應。當您提交表單時,您只會看到一個空白頁面。按鈕Anoniem inloggen也不起作用,兩者都是在javascript中創建的。這僅在使用Android 2.3或更低時纔會發生。我已經嘗試了很多解決方案,但目前爲止還沒有任何解決方案。即使已經提供的解決方案也不行。使用Jquery Mobile的Javascript不工作在Android 2.3及更低版本
鏈接到應用程序:。
這個應用程序的索引腳本是這樣的:
<script type="text/javascript">
$(document).ready(function($) {
checkMail();
$.post('stats.php',
function (data, textStatus) {
$('#stats').empty();
$('#stats').append(data).page();
$('#stats').page('destroy').page();
});
$.post('welcome.php',
function (data, textStatus) {
$('#mail').empty();
$('#mail').append(data).page();
$('#mail').page('destroy').page();
});
function checkMail() {
var item = localStorage.getItem('maillogin');
if (item !== null) {
window.location = '#stats';
}
else{
window.location = '#mail';
}
}
});
</script>
索引體:
<div data-role="page" data-theme="a" id="mail" data-transition="none">
</div>
<div data-role="page" data-theme="a" id="stats" data-transition="none">
</div>
而這裏的問題頁面(的welcome.php)腳本:
$(document).ready(function($) {
$('#mailform').submit(function() {
$.mobile.showPageLoadingMsg();
var email = document.getElementById('email');
var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
if (!filter.test(email.value)) {
$.mobile.changePage("#mail");
alert('Dit is geen geldig mailadres');
$.mobile.hidePageLoadingMsg();
return false
}
else{
if($('#checkbox').attr('checked')) {
$.post('mailinsert.php',
$('#mailform').serialize())
localStorage.setItem('maillogin', $('#email').val());
$('#inlogmail').empty();
$('#inlogmail').append(localStorage.getItem('maillogin')).trigger('create');
$.post('stats.php',
function (data, textStatus) {
$('#stats').empty();
$('#stats').append(data).page();
$('#stats').page('destroy').page();
$.mobile.changePage("#stats");
$.mobile.hidePageLoadingMsg();
});
}
else{ $.mobile.changePage("#mail");
alert('De voorwaarden zijn niet geaccepteerd');
$.mobile.hidePageLoadingMsg();
return false;
}
}
});
$('#skipright').click(function(){
localStorage.setItem('maillogin', 'anoniem');
$.post('stats.php',
function (data, textStatus) {
$('#stats').empty();
$('#stats').append(data).page();
$('#stats').page('destroy').page();
$.mobile.changePage("#stats");
$.mobile.hidePageLoadingMsg();
});
});
});
和問題頁面(welcome.php)正文:
<form id="mailform">
<div data-role="fieldcontain">
<label for="email">E-mail:</label>
<input name="email" id="email" type="text" />
<br />
<div class="ui-grid-b ui-corner-all ui-shadow ui-bar ui-bar-b">
<input type="checkbox" name="checkbox" id="checkbox" data-role="none"/>
<label for="checkbox">Ja, ik accepteer de voorwaarden</label>
</div></br>
<input type="submit" value="Stemmen maar!"/>
</div>
</form>
<h3><a class="skipright" id="skipright">Anoniem inloggen</a></h3>
</div>
因此,簡而言之,welcome.php中實現的操作(如.click和.submit)在android 2.3或更低版本的index.html中不起作用。我們如何解決這些問題?
我曾嘗試過,但不幸的是這不起作用。在Javascript中創建的按鈕也不起作用。 – Simdo
我已經用另一個可能的修復程序更新了我的答案,試試吧。 – Nelson
我更新了我的問題與真正的錯誤。該錯誤不在window.location中,而是在用戶操作中。 Android 2.3及更低版本無用戶操作。 – Simdo