我有一个表单,底部有两个按钮。
<div class="col-xs-12">
<div class="submit-button-mobile">Submit</div>
</div>
<div class="col-xs-12">
<a href="/how_to_book.php">
<div class="how-to-book-button-mobile">
How to book?
</div>
</a>
</div>
原本我在submit-button-mobile
上使用了onclick="send_message();"
(这在桌面端可以工作但在移动端无法工作),同时在移动端标签也无法点击。
我在这里进行了搜索并找到了解决方案,以便在移动端使其正常工作。
$('.submit-button-mobile').on('click touchstart', send_message);
$('.how-to-book-button-mobile').on('click touchstart', function() {
window.location.href = "/how_to_book.php";
});
仍然存在同样的问题,在移动设备上无法点击(已尝试使用Chrome开发者工具进行移动视图测试,也在iPhone和Android上尝试过)。
send_message()在另一个包含在文件顶部的.js文件中。 它看起来是这样的:
function send_message()
{
var a=document.forms["Form"]["name"].value;
var b=document.forms["Form"]["email"].value;
var c=document.forms["Form"]["message"].value;
var d=document.forms["Form"]["surname"].value;
document.getElementById("contact_message").innerHTML = "Sending your message... Please wait.";
loadXMLDoc(a, b, c, d);
}
//pomocna funkcija za validaciju emaila
function validateEmail(email) {
var re = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
return re.test(email);
}
//funkcija za slanje emaila
function loadXMLDoc(name, mail, message, surname)
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("contact_message").innerHTML=xmlhttp.responseText;
document.getElementById("contact_message2").innerHTML=xmlhttp.responseText;
}
}
// xmlhttp.open("GET","send_enquiry.php",true);
xmlhttp.open("POST","send_enquiry.php",true);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.send("name=" + name + "&email=" + mail + "&message=" + message + "&surname=" + surname);
xmlhttp.send();
}
send_message
的定义是什么? - itzmukeshy7