jquery 验证框架的问题 remote的
1、dataType
类型:String
预期服务器返回的数据类型。如果不指定,jQuery
将自动根据 HTTP 包 MIME 信息来智能判断,比如 XML MIME 类型就被识别为 XML。在 1.4 中,JSON 就会生成一个 JavaScript
对象,而 script 则会执行这个脚本。随后服务器端返回的数据会根据这个值解析后,传递给回调函数。可用值:
"xml":
返回 XML 文档,可用 jQuery 处理。
"html":
返回纯文本 HTML 信息;包含的 script 标签会在插入 dom 时执行。
"script":
返回纯文本 JavaScript 代码。不会自动缓存结果。除非设置了 "cache" 参数。注意:在远程请求时(不在同一个域下),所有 POST 请求都将转为
GET 请求。(因为将使用 DOM 的 script标签来加载)
"json":
返回 JSON 数据 。
"jsonp":
JSONP 格式。使用 JSONP 形式调用函数时,如 "myurl?callback=?" jQuery 将自动替换 ?
为正确的函数名,以执行回调函数。
"text":
返回纯文本字符串
2、dataFilter
类型:Function
给
Ajax 返回的原始数据的进行预处理的函数。提供 data 和 type 两个参数:data 是 Ajax 返回的原始数据,type 是调用
jQuery.ajax 时提供的 dataType 参数。函数返回的值将由 jQuery 进一步处理。
3、data
类型:String
发送到服务器的数据。将自动转换为请求字符串格式。GET
请求中将附加在 URL 后。查看 processData 选项说明以禁止此自动转换。必须为 Key/Value 格式。如果为数组,jQuery
将自动为不同值对应同一个名称。如 {foo:["bar1", "bar2"]} 转换为 ‘&foo=bar1&foo=bar2‘。
剩下的就不赋值粘贴了
http://www.w3school.com.cn/jquery/ajax_ajax.asp
dataType: "html",
dataFilter: function(data, type) {
if (data == "true")
return true;
else
return false;
}
问题:
1、远程地址只能输出
"true" 或 "false" : 因为你在dataFilter里边对数据进行了处理,即远程服务器如果返回的响应数据是“true”
不能有任何其他字符,,则将其转换为bool类型的true(方便下一步使用); 其实服务器可以返回1/0 if(data==‘1‘) return
true;一样 不是必须 是可以 但dataFilter过滤完毕后数据只有true/false 从而表示远程验证成功还是失败
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。