5 jQuery如何获取页面表单中的数据?
$("button").click(function(){ alert($(this).serialize());});//或者$('form').submit(function() { alert($(this).serialize()); return false;}); serialize()方法通过序列化表单值,创建URL编码文本字符串
jquery为什么要序列化?
用ajax传递表单的数据,如果不进行表单的序列化,要一个参数一个参数的写,太麻烦,序列化的话,一句代码搞定。data:$('form').serialize(),这样一句话解决复杂的表单ajax的post传值过程。
提交时数据是直接以原始格式存储在body中而不是以键值对的方式附加到url中的,所以后台程序是无法直接识别的,这时候就需要在提交前先把data转换为 a=1&b=2&c=3 的格式再提交,这就是序列化。
当然,如果数据是通过表单提交的,那么不管是post方式还是get,浏览器会自动进行序列化,无需前端js再做任何处理。
c语言中重置表单的方法?
如果一开始表单是空的状态,可以使用reset重置后就为空了。如果一开始有些内容已经存在,想要清空,则只能循环对每个输入项做清空处理。jQuery版本:jQuery("#submitForm").get(0).reset()普通版本:
document.getElementById('submitForm').reset()submitForm 是表单form的id
html中如何不使用type=file上传文件?
常用的上传方法也就几种,一种就是html5表单提交方式例子代码如下:
<form id="myForm">
<input type="file" id="u_photo" name="u_photo" />
<input type="button" id="submit-btn" value="上传" />
</form>
另一种使用无刷新ajax方法,Jquery用法例子如下:
$("#submit-btn").on('click', function() {
$.ajax({
url:"/test/upload",
type:"post",
data:new FormData($("#myForm").get(0)),
cache: false,
processData: false,
contentType: false,
success: function () {
alert("上传成功!");
}
});
});
这两种是最常用也是经常用到,还有其他拖拽,粘贴等不常用就不具体介绍。