0

ユーザーが何を検索するかを選択するラジオグループがあります。ユーザーが検索していない入力は JavaScript で隠されています。それらが送信されないようにするにはどうすればよいですか? たとえば、radio1 が選択されている場合、名前を入力して送信したくありません"search-by-date"。name 属性を削除する以外にできる方法はありますか? name 属性を削除することが唯一の/最良の方法である場合、それを行う適切な場所はどこですか?

ありがとう

4

3 に答える 3

1

Gijs コードの例を少し小さくしました。

$("form").submit(function() {
    var inputs = $(this).find(':input'),
        emptyInputs = inputs.filter('[value=""]');
    return inputs.length > emptyInputs.length && emptyInputs.prop("disabled", true).length > 0;
});

すべての入力が空かどうかを確認してから false を返しますが、値を持つ入力があり、空の入力がある場合は true を返し、空の入力を無効に設定します

于 2012-07-20T08:35:50.923 に答える
1

フィールドを無効にします。

$('#your_form_id').submit(function(){
    if($("input:radio[name=radio1]").prop('checked')){
        $("input:radio[name=search-by-date]").prop('disabled',true);
    }
});
于 2012-07-20T08:38:31.387 に答える
1

空の値を送信しないように作成したスクリプトは、役立つ場合があります。また、何も入力されていない場合はフォームを無効にします。

$("form").submit(function() {
  var count = $(this).find(':input').filter(function() {
    return $(this).val() != "";
  }).length;
  if (count > 0) {
    $(this).find(':input[value=""]').attr("disabled", "disabled");
    return true;
  } else {
    return false;
  }
});
于 2012-07-20T08:24:59.830 に答える