我有一个表单,我通过jQuery的serialize
函数通过AJAX调用发送。但是,我的某些字段可能有也可能没有值,如果它们没有值,则它们可能有占位符。如果值为空,我希望serialize
将发送占位符,但在测试中似乎并非如此。当实际值为空时,是否可以使serialize
包含占位符值,或者我是否必须编写一些自定义逻辑?
答案 0 :(得分:2)
您需要在调用serialize()
$('#myForm :input[placeholder]').val(function(idx, currVal){
var placeholder = $(this).attr('placeholder') || '';
return currVal ? currVal : placeholder ;
});
// serialize here
上面使用val(function)
创建循环并将每个元素视为唯一实例
假设设置控件本身的值是可以接受的,因为这是最简单的方法。