Отключить выбор HTML при отправке формы - PullRequest
0 голосов
/ 11 октября 2019

Когда я отправляю свою форму и в одном из полей выбора ничего не выбирается, я не хочу, чтобы этот элемент отправлялся на сервер. Поэтому я использую jquery, чтобы отключить его.

$('#selectYear').prop('disabled', true);

Но, к сожалению, он все равно отправляется на сервер как year=null в строке запроса. Но вместо этого его вообще не следует отправлять, поскольку на сервере он будет принят как year = "null". Поэтому я подумал, что при его отключении все будет хорошо, но вместо этого он будет отправлен как ноль, чего я не хочу.

Ответы [ 2 ]

1 голос
/ 11 октября 2019

Вы можете использовать pointer-events: none; для создания и элемента "отключить действие" , что проще, чем добавление disabled к каждому элементу.

document.getElementById('button').onclick = function() {
  document.getElementById('my_form').classList.add('disable');
}
.disable {
  user-select: none;
  pointer-events: none;
}
<div>

  <form id="my_form">
    <input type="text" placeholder="Name" />

    <input type="text" placeholder="Password" />

    <select>
      <option>1</option>
      <option>2</option>
    </select>
  </form>

  <button id="button">
  Disable
  </button>

</div>
0 голосов
/ 11 октября 2019

Убедитесь, что вы установили отключенную опору перед отправкой формы:

function checkSelectYear(){    
  if( !$('#selectYear').val() && $('#selectYear').prop('disabled') === "undefined") {    
    $('#selectYear').prop('disabled', true);
    checkSelectYear();
  }
  else{
    $('#myform').submit();
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...