我有几个文本输入的表单。
当用户点击此表单上的提交时 - 文本输入字段值被序列化并像这样成为 GET 请求的参数
?param1+=26482¶m2=
我需要检查:如果参数没有值则将其删除。因此只有具有值的参数才会附加到 GET 请求。
应该怎么做?
我的提交功能
$("body").on('click','#form_submit_button', function(e){
var form = $('#filter_form');
change_url('?'+form.serialize());
});
function change_url(link)
{
var IE = IE || 0;
if (IE == 0) {
var stateObj = { foo: "bar" };
history.pushState(stateObj, "page 2", link);
} else {
location.href = link;
}
}
最佳答案
您可以使用以下 js 过滤您的表单,仅包括具有值的输入。
$(document).ready(function () {
$('#filter_form').submit(function () {
var text = $(this).find(":input").filter(function () {
return $.trim(this.value).length > 0
}).serialize();
console.log('text: ', text);
return false;
});
});
关于javascript - 在表单提交jquery之前删除空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26465912/