我捅了一圈,發現了類似的問題,但沒有一個解決方案奏效。jQuery Mobile點擊按鈕,但沒有任何反應
我正在寫一個簡單的(到目前爲止)應用程序,允許用戶從表格中選擇1-6的數字,然後在另一頁上顯示該值(1-6)。它可以在我的桌面上正常工作,但是當我從iPhone模擬器中嘗試它時,我點擊「提交」,根本沒有任何反應......就好像我沒有點擊它一樣。
我使用的是jQuery 1.10.1和jQuery Mobile 1.3.1。我將補充說這是一個使用Adobe的PhoneGap Build服務的PhoneGap應用程序。
下面是我的主網頁代碼:
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>Value Submit</title>
<link rel="stylesheet" type="text/css" href="css/jquery-mobile.css" />
<link rel="stylesheet" type="text/css" href="css/themes/aw-theme2.css" />
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jquery-mobile-min.js"></script>
<script type='text/javascript'>
$(document).on('pageinit', function() {
$(document).on('click', '#submitroll', function() {
var dieRoll = $("#dieresult").val();
$.mobile.changePage('valuedresult.html', { data: {arg1:dieRoll}});
return false;
});
});
$(document).on('pageinit', '#valued', function() {
var dieRoll = $("#dieresult").val();
$("#results span").html(dieRoll);
});
</script>
</head>
<body>
<div data-role="page" id="valued" data-theme='a'>
<div data-role="header" data-header-theme='a'>
<a data-icon="back" data-rel="back" back-btn="true">Back</a>
<h1>Value</h1>
<a data-icon="home" href="index.html" data-iconpos="notext">Home</a>
</div>
<div data-role="content" data-theme='a'>
<form id="rollform">
<select id="dieresult" name="dieresult">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
</select>
<a href="#" data-role="button" data-inline="true" id="submitroll">Submit</a>
</form>
</div>
</body>
</html>
這裏是爲valuedresult.html代碼:
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>Value Result</title>
<script>
$(document).on('pageshow', function(event) {
var url = $.url(document.location);
var arg1 = url.param("arg1");
$("#results span").html(arg1);
});
</script>
</head>
<body>
<div data-role="page" id="valueresult" data-theme='a'>
<div data-role="header" data-header-theme='a'>
<a data-icon="back" data-rel="back" back-btn="true">Back</a>
<h1>Value Result</h1>
<a data-icon="home" href="index.html" data-iconpos="notext">Home</a>
</div>
<div data-role="content" data-theme='a'>
<div id="results">Result: <span></span>
</div> <!-- results -->
</div>
</body>
</html>
正如我所說的,它工作正常的桌面瀏覽器,但沒有任何反應在iPhone模擬器上點擊「提交」。
我已經玩了很長時間了,指的是其他帖子,文檔等......但我似乎無法讓它工作。希望我只是錯過了一些愚蠢的東西。
任何幫助表示讚賞。非常感謝您提前!
非常感謝您花時間檢查我的代碼。我會嘗試更改併發布我的結果!再次感謝! – mrbranden
好吧,我試了一下......移動瀏覽器沒有變化 - 點擊提交按鈕什麼也不做;就好像我點擊背景或其他東西。現在,當我使用桌面瀏覽器時,它不會傳遞/捕獲arg1的值。 根據您的編輯,我可以使用URL參數調整代碼以使其正常工作。但是爲什麼點擊提交按鈕卻什麼都沒做,我仍然不知所措。 再次感謝您的修改。我會再和他們一起玩,看看我能否實現它。進一步的建議也受到歡迎。 :-) – mrbranden
嗯,我測試了我在桌面和PhoneGap應用中發佈的代碼。確保這兩個HTML文件在構建PhoneGap應用程序時位於同一文件夾下(因爲changePage('valuesresult.html'試圖在現有路徑中查找valuresult.html)。我還發布了一些圖像,描述了相應的PhoneGap應用程序在Android模擬器上運行 –