<details open>
<summary>元素做表单</summary>
<div form>
<input name="a1" value="1"><br />
<input name="b1" value="2"><br />
<input name="c1[]" value="3"><br />
<input name="c1[]" value="4"><br />
<input name="d1['a'][]" value="5"><br />
<input name="d1['a'][]" value="6"><br />
<textarea name="long" rows="" cols="" id="long">212112</textarea><br />
<input value="提交" type="button" submit>
</div>
<script>
$(function() {
$.fn.postform = function(callback) {
var dataType = (typeof(arguments[1]) !== "undefined") ? arguments[1] : false;
$(this).each(function() {
var e = $(this)
e.__proto__.callback = callback;
var data = e.clone().wrap("<form></form>").parent().serialize();
var action = (e.attr("action") + "") == "undefined" ? "" : e.attr("action");
if(dataType)
$.post(action, data, function() {
e.callback(arguments[0], arguments[1], arguments[2], arguments[3])
}, dataType);
else $.post(action, data, function() {
e.callback(arguments[0], arguments[1], arguments[2], arguments[3])
});
});
return $(this);
}
$("[form]").postform(function(result) {
alert(result);
alert($(this).attr("class"))
}).attr("hi", "自己添加的属性");
$("[submit]").on("click", function() {
$(this).parents("[form]").postform(function(result) {
alert(result);
});
});
});
</script>
</details><br />