【问题标题】:Include placeholder in jQuery serialize在 jQuery 序列化中包含占位符
【发布时间】:2016-01-17 04:03:00
【问题描述】:
我有一个表单,我使用 jQuery 的 serialize 函数通过 AJAX 调用发送。但是,我的某些字段可能有值,也可能没有值,如果它们没有值,它们可能有一个占位符。如果值为空,我希望serialize 会发送占位符,但在测试中似乎并非如此。当实际值为空时,是否可以让serialize 包含占位符值,还是我必须编写一些自定义逻辑?
【问题讨论】:
标签:
javascript
jquery
forms
serialization
input
【解决方案1】:
您需要在调用 serialize() 之前循环输入的内容
$('#myForm :input[placeholder]').val(function(idx, currVal){
var placeholder = $(this).attr('placeholder') || '';
return currVal ? currVal : placeholder ;
});
// serialize here
以上使用val(function) 创建循环并将每个元素视为唯一实例
假设设置控件本身的值是可以接受的,因为这是最简单的方法。