[英]jQuery -.on(“click”) Not Working on Mobile
我有一个表格,用户可以将文件上传到数据库。 无法在移动设备上进行.on("click")
事件。 在PC /笔记本电脑上工作正常,文件上传成功。 在移动设备上,如果我单击按钮,则没有任何响应。
代号
$(document).on("click", "#submit_upload", function(){
var data = new FormData(document.querySelector("#fileInfo"));
// If I comment below variables,
// it works fine on both mobile and computers.
jab = data.get('jab'),
kat_doc = data.get('jenis_fail'),
doc_nama = data.get('nama');
doc = data.get('file').size;
$.ajax({
url: url,
type: "POST",
data: data,
contentType: false,
cache: false,
processData:false,
success: function(data)
{
$("#cont").html(data);
if (!doc_nama) {
$("#nama-doc").addClass("list-group-item list-group-item-warning");
}
if (jab == 0) {
$("#jab").addClass("list-group-item list-group-item-warning");
}
if (kat_doc == 0) {
$("#kat-doc").addClass("list-group-item list-group-item-warning");
}
if (!doc) {
$("#doc").addClass("list-group-item list-group-item-warning");
}
$('#myModal').modal({backdrop: "static"});
$('#myModal').on('shown.bs.modal', function () {
$('#myInput').focus();
});
}
});
});
注意:如果我注释变量jab/kat_doc/doc_nama/doc
,它将触发click事件。
我希望它如何与变量一起使用?
再想一想手机...
手机或平板电脑上没有鼠标。
click
绝对是鼠标事件。
尝试将这些事件添加到您的处理程序中:
( 触摸事件参考 )
$(document).on("click tap touchstart", "#submit_upload", function(){
这应该可以解决问题。
将函数的第一行更改为下面,它应该可以工作:
$(document).on('click touchstart', '#submit_upload', function(){
或尝试一下
$(document).on('click touch', '#submit_upload', function(){
尝试这个:
$('#submit_upload').on('click', function(){...});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.