H5+app -- 关于ajax提交问题
1、前阵子在做系统的h5+ app为满足手机端也能进行业务操作,例如:提货,扫描入库之类的。所以就要将做接口,从手机端调用后台系统的方法。
2、例如这样的请求格式,但是呢,每次请求它都直接跳到error,刚开始还以为是网络问题,就连上wifi试了试,发现还是直接跳error。然后就开始怀疑请求格式了。。。
如下:
function openScan(data) {
mui.ajax(OPENSCAN, {
data: data,
dataType: 'json',
type: 'post',
timeout: 10000,
headers: {
'Content-Type': 'application/json',
'accessToken': localStorage.getItem('accessToken')
},
success: function(result) {
JQ("#prompt1").html("");
},
error: function(xhr, type, errorThrown) {
app.ajaxError(xhr, type, errorThrown);
}
});
}
3、其实是正确的格式。。。最后突然想起来,tm。。。原来只有一个文本框,这时候已经是1个多小时后了。
4、所以一个文本框时会出现bug,历史由来已久,想了解问度娘。
5、所以顺便说说一个文本框bug解决的方法。
a.最简单就是直接多加一个文本框,然后进行隐藏。
如下:
<form class="mui-input-group">
<div class="mui-input-row">
<label style="font-size: 90%;">扫描条码:</label>
<input type="text" class="mui-input-clear" placeholder="请输入条码" id="trackingNo" value="" style="color: blue">
</div>
<div class="mui-input-row" style=" display: none;"> //格式随意,只要不是一个文本框,就没有问题了
<input type="text" class="mui-input-clear" placeholder="隐藏" id="trackingNo1" value="">
</div>
</form>
b. 使用preventDefault()方法,preventDefault() 方法阻止元素发生默认的行为(例如,当点击提交按钮时阻止对表单的提交)。
如下:
doc.querySelector('#trackingNo').addEventListener('keydown', function(e) {
e.preventDefault();
if(e.keyIdentifier == "Enter") {
var trackingNo = JQ('#trackingNo').val();
if(trackingNo == null || trackingNo == '') {
alert("扫描条码不能为空!");
return;
}
openScan(trackingNo);
}
});
后记:转发请注明出处:https://www.cnblogs.com/lrj1009IRET/p/9998142.html
H5+app -- 关于ajax提交问题的更多相关文章
- Ajax 提交KindEditor的数据
这次我是在EasyUI中使用了KindEditor的编辑器,按照官方给的代码,总是无法获取编辑器里面的值(内容),如下: KindEditor.ready(function (K) { ...
- ajax提交form表单
1. ajax提交form表单和不同的form表单的提交主要区别在于,ajax提交表单是异步提交的,而普通的是同步提交的表单. 2. from视图部分 <form id="loginF ...
- lavarel框架中如何使用ajax提交表单
开门见山,因为laravel以post形式提交数据时候需要加{{csrf_field()}}防止跨站攻击,所以当你用ajax提交表单时候自然也要加 在网上看了很多的解决方式,我是用下面这种方法解决的: ...
- H5 APP开发必读,20个你不知道的Html5新特征和窍门
Jeffrey Way曾发表过一篇博文<28 HTML5 Features, Tips, and Techniques you Must Know >讲述了28个HTML5特征.窍门和技术 ...
- ECSTORE AJAX提交的实现
今天向大家介绍在ecstore中怎样使用ajax提交数据 1 <script> //JAVASCRIPT代码 $$(".BB").ADDEVENT('CHANGE',F ...
- ajax提交表单向后台发送数据
Ajax提交表单 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...
- 基于ajax提交数据
昨日回顾: 1 inclusion_tag -干什么用的?生成html的片段(动态,传参数,传数据) -app下新建一个模块,templatetags -创建一个py文件(mytag.py) -fro ...
- 向后台提交数据:通过form表单提交数据需刷新网页 但通过Ajax提交数据不用刷新网页可通过原生态Ajax或jqueryAjax。Ajax代码部分
原生态Ajax提交表单:需要借助XMLHttpRequest对象的open,要收通过post发送请求还要setRequsetHeader,然后把数据发送给后端,代码如下 目录结构 index.py代码 ...
- laravel ajax提交登陆存储session,并输出
前端输出session {{ Session::get('username') }} ajax提交 <div>{{ Session::get('username') }}</div& ...
随机推荐
- requests模块(get请求)篇
- HTTP for Humans,更简洁更友好- 继承了urllib的所有特征- 底层使用的是urllib3- 开源地址: https://github.com/requests/requests- ...
- What is neural network?
It is a powerful learning algoithm inspired by how the brain work. Example 1 - single neural network ...
- Vue-cli中的跳转
Vue-cli中的跳转 一.页面中跳转指定网页 写法一: <router-link :to="{name:'home'}"> 这里的name是在VUE路由里面的 写法二 ...
- 使用CDPATH快速cd到指定路径
CDPATH是shell的一个环境变量, 默认值为空: 将你常用的目录添加到CDPATH的目录列表中, 用':'冒号分隔, 比如, 当前目录 ., home目录 ~, 根目录 /, 等等: # 注意等 ...
- Oracle数据库提权(低权限提升至dba)
0x01 Oracle存储过程”缺陷” 在 Oracle 的存储过程中,有一个有趣的特点:运行权限.运行权限分为两种,definer 和 invoker. definer 为函数创建者的权限,而 in ...
- 中国.NET开发者峰会特别活动-基于k8s的微服务和CI/CD动手实践报名
2019.11.9 的中国.NET开发者峰会将在上海举办,到目前为止,大会的主题基本确定,这两天就会和大家会面,很多社区的同学基于对社区的信任在我们议题没有确定的情况下已经购票超过了300张,而且分享 ...
- php反序列化漏洞复现过程
PHP反序列化漏洞复现 测试代码 我们运行以上代码文件,来证明函数被调用: 应为没有创建对象,所以构造函数__construct()不会被调用,但是__wakeup()跟__destruct()函数都 ...
- Spring Boot2 系列教程(十六)定时任务的两种实现方式
在 Spring + SpringMVC 环境中,一般来说,要实现定时任务,我们有两中方案,一种是使用 Spring 自带的定时任务处理器 @Scheduled 注解,另一种就是使用第三方框架 Qua ...
- 06_基本框架_VMCS_GuestArea
1 Guest-State Area 1.1 References 注释: 其实 内容很多 一般是不背 的:需要的时候来查就行:但是要大致知道是做啥的. 代码 > 设置 Guest Area / ...
- 基于Prometheus和Grafana的监控平台 - 运维告警
通过前面几篇文章我们搭建好了监控环境并且监控了服务器.数据库.应用,运维人员可以实时了解当前被监控对象的运行情况,但是他们不可能时时坐在电脑边上盯着DashBoard,这就需要一个告警功能,当服务器或 ...