我一直在使用它来获取表单并将内容序列化为JS对象(而不是JSON)。
https://github.com/marioizquierdo/jquery.serializeJSON
问题在于它不支持序列化data-
值。有时候我想要一个表单输入将一个对象作为一个值,我能想到的唯一方法就是将对象存储到输入元素的data-
属性中:
<input type="checkbox" name="selectedProducts[]" data-value="{ sku: 'item1', price: 2599 }">
<input type="checkbox" name="selectedProducts[]" data-value="{ sku: 'item2', price: 999 }">`
<select>
<option data-value='{"name":"Sam","age":"40", "isMarried": true}'>Sam</option>
<option data-value='{"name":"Todd","age":"22", "isMarried": false}'>Todd</option>
</select>
使用jQuery手动完成它很容易,但是我有很多表单,坦率地说,如果没有包这么做就很难。