2017-01-11 6 views
0

У меня есть флажок «Подпишитесь на уведомления по электронной почте», который по умолчанию проверяется значением «Да». Если он не установлен, его необходимо установить в «Нет». Это не идеальное решение, но это ценности, которые необходимо отправить в базу данных при отправке формы.Изменено значение флажка во время события клика, которое не подхвачено данными формы

HTML-:

<input name="emailSignUpCheckbox" id="emailSignUpCheckbox" type="checkbox" value="Yes" onclick="updateSignUpCheckbox()">Sign me up! 

Javascript:

var emailSignUpCheckbox = document.getElementById('emailSignUpCheckbox'); 

function updateSignUpCheckbox(){ 
    if(emailSignUpCheckbox.checked) { 
     emailSignUpCheckbox.value = "Yes"; 
    } 
    else { 
     emailSignUpCheckbox.value = "No"; 
    } 
} 

Значение флажка меняется каждый раз, и я подтвердил это, глядя на DOM или протоколирование значение консоль. И когда отправлено как отмечено (по умолчанию), значение «Да» отправляется формой в базу данных.

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

Любые предложения о том, что я могу делать неправильно, очень ценятся!

ответ

1

Я надеюсь, что это может вам помочь, another answer, представлены только значения «on», одно из них - считать, что если значение флажка не указано в представлении, это означает, что его значение «из».

+1

Это на самом деле имеет смысл. Вместо этого я использую скрытое поле, чтобы отправить значение независимо от того, что. Благодаря! – IntricatePixels

+0

Быстрое обновление, в котором использование скрытого поля и обновление значения этого поля и отправка этого поля сделали трюк. – IntricatePixels

 Смежные вопросы

  • Нет связанных вопросов^_^