dojo dom-form模块
发布时间:2020-12-16 21:37:23 所属栏目:百科 来源:网络整理
导读:Email:longsu2010 at yeah dot net 假设一个场景,现在有一个一百个表单项的表单要提交到服务器端,你可能谨慎的选择了POST方式。再加一个条件,使用websocket与服务器端通信,那么表单提交那套用不上了。如果说让你一个一个表单拼接的话,是不是想掏刀子杀人
Email:longsu2010 at yeah dot net
假设一个场景,现在有一个一百个表单项的表单要提交到服务器端,你可能谨慎的选择了POST方式。再加一个条件,使用websocket与服务器端通信,那么表单提交那套用不上了。如果说让你一个一个表单拼接的话,是不是想掏刀子杀人了? 当人谁都会用程序搞定,首先获取到form节点,之后再通过form的elements获取到所有的input之后,之后拼接,之后…… dojo其实已经有这样的东西了,dojo/dom-form模块完成这件事情。 该模块提供的方法如下: 1、fieldToObject:获取表单的值,多选返回的会是一个数组。参数为一个表单的id或者表单dom对象。 2、toObject:根据表单生成一个js对象(JSON对象)。参数为一个form id或者form对象。 3、toQuery:根据表单生成url串,参数同toObject。 4、toJson:根据表单生成JSON字符串。参数同toObject。 以上三个方法中除了第一个以外均需要表单项有name属性。而且type为file、submit、image、reset、button的表单项不会出现在生成的结果中。 来一个简单的例子 <form id="myform"> <input type="text" name="f1" value="v1"> <input type="text" name="f2" value="v2"> <input type="button" name="someButton" value="someValue"> </form> toObject("myform"):{"f1":"v1","f2":"v2"} toQuery("myform"):"f1=v1&f2=v2" toJson("myform"):'{"f1":"v1","f2":"v2"}' 非常简单,不做过多的说明。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |