У меня есть простая страница в HTML, которая вызывает метод JavaScript при нажатии кнопки. Это прекрасно работает, когда я вызываю это с моего компьютера. Однако, когда я пытаюсь запустить это из своего мобильного приложения (обратите внимание: я создаю мобильное приложение с использованием HMTL5 CSS и Javascript, cordova), когда я нажимаю кнопку "Отправить", он просто ничего не сделает, даже не распечатывая инструкцию оповещения. я в тупике и понятия не имею, почему он ведет себя иначе?
<div data-role="page" id="PostUserUpdates" >
<div data-role="header" data-position="fixed" data-theme="b">
</div>
<div data-role="main" class="ui-content">
<pre><B>
<div id="resultDayOfWeek"></div>
<div id="resultNum"></div>
<div id="resultDir"></div>
<div id="resultStop"></div>
<div id="resultTime"></div>
</B>
</pre>
<fieldset data-role="controlgroup">
<legend>Choose Status</legend>
<label for="Arrived/Left">Arrived/Left</label>
<input type="radio" name="status" id="Arrived/Left" value="Arrived/Left">
<label for="Delayed">Delayed</label>
<input type="radio" name="status" id="Delayed" value="Delayed">
<label for="Canceled">Canceled</label>
<input type="radio" name="status" id="Canceled" value="Canceled">
<label for="getupdate">getupdate from others</label>
<input type="radio" name="status" id="getupdate" value="getupdate">
<label for="Other">Other</label>
<input type="radio" name="status" id="Other" value="Other">
</fieldset>
<textarea name="addinfo" id="info"> Comments goes here.... </textarea>
<button class="ui-btn ui-btn-b" onclick="postSubmit();" >Submit </button>
<div id="poststatus"></div>
</div>
</div>
,
function postSubmit()
{
alert("In PostSubmit");
var dow= document.getElementById("resultDayOfWeek").innerHTML;
var busnum= document.getElementById("resultNum").innerHTML;
var direction= document.getElementById("resultDir").innerHTML;
var stopname= document.getElementById("resultStop").innerHTML;
var time= document.getElementById("resultTime").innerHTML;
var value ="" ;
if (document.getElementById('Arrived/Left').checked) {
value = document.getElementById('Arrived/Left').value;
}
else if (document.getElementById('Delayed').checked) {
value = document.getElementById('Delayed').value;
}
else if (document.getElementById('Canceled').checked) {
value = document.getElementById('Canceled').value;
}
else if (document.getElementById('getupdate').checked) {
value = document.getElementById('getupdate').value;
}
else{
value = document.getElementById('Other').value;
}
alert(value);
alert(dow);
alert(busnum);
alert(direction);
alert(stopname);
alert(time);
var comments = document.getElementById('info').value;
alert(comments);
}
Решение 1. Попробуйте поместить часть javascript в голову. Демо здесь.
Решение 2. Просто используйте jQuery.click. (поставьте его в $(document).ready()
)
$("#myButton").click(postSubmit);
Причина firering not click event, но touch event (touchstart, touchhend, touchmove и touchcancel)
См. Этот ответ, чтобы получить пример.