Sé que esta pregunta ya está respondida, y la mayoría sugirió utilizar readonly
attribure.
Solo quiero compartir mi escenario y respuesta.
Después de añadir readonly
atributo a mi elemento HTML, enfrenté tema que no soy capaz de hacer este atributo como required
dinámicamente.
Incluso intenté la configuración como readonly
y required
en la hora de creación de HTML.
Así que voy a sugerir no utilice readonly
si quieres configurarlo como required
también.
en lugar de utilizar
$("#my_txtbox").datepicker({
// options
});
$("#my_txtbox").keypress(function(event) {
return ((event.keyCode || event.which) === 9 ? true : false);
});
Esto permite presionar solamente tab
clave.
Puede agregar más códigos de clave que desea eludir.
I siguiente código desde que han añadido tanto readonly
y required
todavía envía el formulario.
Después de eliminar readonly
funciona correctamente.
https://jsfiddle.net/shantaram/hd9o7eor/
$(function() {
$('#id-checkbox').change(function(){
\t $('#id-input3').prop('required', $(this).is(':checked'));
});
$('#id-input3').datepicker();
$("#id-input3").keypress(function(event) {
return ((event.keyCode || event.which) === 9 ? true : false);
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<link href="https://code.jquery.com/ui/jquery-ui-git.css" rel="stylesheet"/>
<form action='https://jsfiddle.net/'>
Name: <input type="text" name='xyz' id='id-input3' readonly='true' required='true'>
<input type='checkbox' id='id-checkbox'> Required <br>
<br>
<input type='submit' value='Submit'>
</form>
para la gente que ha inhabilitado JavaScript dejaría el campo de entrada solo en el HTML y tener el bit de jQuery coloque el atributo de sólo lectura en la carga de la página $ (document) .ready (function() {$ ("# my_txtbox"). attr 'readOnly', 'true'); }); De esta manera, los usuarios con JS desactivados aún pueden elegir una fecha – SimonGates
, esto es genial ... sin embargo, el estilo predeterminado que Chrome (y posiblemente otros navegadores) agrega a los atributos de solo lectura es realmente desagradable, así que asegúrate de anularlo – Damon
Atención. Con 'readonly' datepicker, el usuario final ** podrá compilar ** el valor del campo seleccionando otra fecha del datepicker, como en este error: http://bugs.jqueryui.com/ticket/13107 – Serge