Estoy usando css y javascript para verificar la condición del valor del código de socio es nulo y 01
Este es mi código:
<tr> <th scope="row">Partner</th> <td colspan="0" style="margin-top: 4px;"> <input id="parnerNameCheck" name="parnerNameCheck" type="checkbox"/><span>PARTNER</span> </td> <td> <select id="partnerName" name="partnerName" disabled> <option value="" selected>Choose One</option> <option>01 - Elite</option> </select> </td> <td> <input id="partnerCode" name="partnerCode" type="hidden" value="01" /> </td> </tr> <script> $('#parnerNameCheck').click(function() { console.log('parnerNameCheck checked:' + $("#parnerNameCheck").is(":checked")); $('#partnerName').prop("disabled", !$(this).prop("checked")); $('#partnerCode').prop("disabled", !$(this).prop("checked")); }); </script>ACTUALIZADO :
$('#parnerNameCheck').click(function() { console.log('parnerNameCheck checked:' + $("#parnerNameCheck").is(":checked")); $('#partnerName').prop("disabled", !$(this).prop("checked")); $('#partnerCode').prop("disabled", !$(this).prop("checked")); $("#partnerCode").val(''); }); Pero cuando desmarco la casilla de verificación es SOCIO, el valor del código de socio es 01 y aún se envía cuando se envía.
Entonces, ¿cómo solucionar el problema? muchas gracias
establecer $("#partnerCode").val('');
$('#parnerNameCheck').click(function() { console.log('parnerNameCheck checked:' + $("#parnerNameCheck").is(":checked")); $('#partnerName').prop("disabled", !$(this).prop("checked")); $('#partnerCode').prop("disabled", !$(this).prop("checked")); $("#partnerCode").val(''); }); <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <tr> <th scope="row">Partner</th> <td colspan="0" style="margin-top: 4px;"> <input id="parnerNameCheck" name="parnerNameCheck" type="checkbox"/><span>PARTNER</span> </td> <td> <select id="partnerName" name="partnerName" disabled> <option value="" selected>Choose One</option> <option>01 - Elite</option> </select> </td> <td> <input id="partnerCode" name="partnerCode" type="hidden" value="01" /> </td> </tr>Creo que le falta la capacidad de alternar el valor de partnerCode. Su código actualizado solo establecería el valor de parnetCode en nulo y eso es todo.
A continuación se muestra el código que cambiaría los valores de partnerCode:
$('#parnerNameCheck').click(function() { console.log('parnerNameCheck: ' + $("#partnerCode").val()); $('#partnerName').prop("disabled", !$(this).prop("checked")); $('#partnerCode').prop("disabled", !$(this).prop("checked")); // Declare variables var partnerCode = $("#partnerCode"); var partnerCodeVal = partnerCode.val(); // Apply condition to $("#partnerCode").val() // that will switch between values partnerCode.val(partnerCodeVal === "01" ? "" : "01"); });Ejemplo de trabajo: https://jsfiddle.net/ma4orbnw/1/