1

重複の可能性:
jQueryのform.serializeを使用して空のフィールドを除外するにはどうすればよいですか

未使用の入力名がフォームに入力されていない場合は、シリアライズ文字列から削除する必要があります。添付の JSFiddle を参照してください。現在、誰かが Q1 と Q3 のみを入力すると、文字列は次のように表示されます/static/url/to/file.php?Q1=Bob&Q2=&Q3=Dan&Q4=。したがって、送信前に文字列から and の名前Q2=を削除したいと思います。Q4=ありがとう

JSFiddle-シリアライズ

4

1 に答える 1

1

これを試して:

$('#form1').find('input[type="text"]').not('#url').change(function(){
    var val = "";
    var url = '/static/url/to/file.php?';
    $('form input[type="text"]').not('#url').each(function(){
        if ($.trim(this.value).length > 0 ) { 
          val += ($(this).attr('name') + "=" + this.value + "&");
        }  
    })
    $('#url').val(url+val);
});

$('#button').click(function(){
    window.location = $('#url').val();
});

デモ

于 2012-07-08T10:17:15.323 に答える