簡體   English   中英

jQuery使用method = get通過表單隱藏提交地址中沒有值的字段,效果不佳

[英]jQuery to hide fields with no value in submitted address through form with method=get , doesn't work well

我正在使用帶有method="get"和其他幾個下拉菜單的表單。 當我提交表單時,由於我不想有一個巨大的地址,因此我嘗試僅保留不為空的字段。

當前,如果我選擇其中的一些,結果將禁用所有功能,即使我選擇了值的下拉菜單也是如此。

我在這里想念什么?

$(document).ready(function () {
    $('#apliforma').submit(function () {
        $(this).find('select').not(":selected").prop('disabled', true);
        return true;
    });
});

   <select class="form-control" name="kivikafrom" id="from">
                <option value="">All</option>
                <option value="1000">1000 cc</option>
                <option value="1200">1200 cc</option>
                <option value="1400">1400 cc</option>
                <option value="1600">1600 cc</option>                   
    </select>

如果您所有的下拉菜單都具有默認值或未選擇的值"" ,則該方法應該起作用:

$(this).find('select').filter(function() {
    return this.value == ''; 
}).prop('disabled', true);

我認為沒有必要禁用其他選擇框選項。

您只能通過以下方式獲得選定的值

var selected_value = $("#from").val();
if(select_value != ''){
  /* write code for what ever you want */
}

據了解,並不需要額外的努力來禁用所有其他選項,但是當您提交表單時,它將僅從參數中的選擇框中發送選擇選項。 所有其他未選擇的選項將不會以參數形式發送。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM