Pergunta

Eu tenho um problema bastante frustrante, onde o número máximo de disponível DatePicker de em uma página parece ser vinte. Não consigo encontrar qualquer documentação referente a este.

Se eu tivesse uma página com 100 caixas de texto, e fez o seguinte:

$(document).ready(function() {
    $(".datepicker").datepicker({ duration: '', dateFormat: 'dd/mm/yy' });
});

Em seguida, os primeiros 20 caixas de texto têm o DatePicker, no entanto, quando você selecionar uma caixa de entrada depois que o DatePicker aparece contra a caixa de entrada XX para uma data.

Isso está sendo feito sob IE7. Alguma idéia?

Foi útil?

Solução

Eu testei o seguinte código no Firefox 3 no Ubuntu, e todas as caixas de texto tinha um DatePicker associado a ele. IMHO não deve haver qualquer limite. você poderia testar meu código de sua instalação e ver se funciona?

<html>
<head>
<script type='text/javascript' src='jquery.js'></script>
<script type='text/javascript' src='date.js'></script>
<script type='text/javascript' src='jquery.datePicker.js'></script>
<link rel='stylesheet' type='text/css' href='datePicker.css' />
</head>
<body>
<form>
<input type='text' class='asdf' name='test1' id='text1' />
<input type='text' class='asdf' name='test2' id='text2' />
<input type='text' class='asdf' name='test3' id='text3' />
<input type='text' class='asdf' name='test4' id='text4' />
<input type='text' class='asdf' name='test5' id='text5' />
<input type='text' class='asdf' name='test6' id='text6' />
<input type='text' class='asdf' name='test7' id='text7' />
<input type='text' class='asdf' name='test8' id='text8' />
<input type='text' class='asdf' name='test9' id='text9' />
<input type='text' class='asdf' name='test10' id='text10' />
<input type='text' class='asdf' name='test11' id='text11' />
<input type='text' class='asdf' name='test12' id='text12' />
<input type='text' class='asdf' name='test13' id='text13' />
<input type='text' class='asdf' name='test14' id='text14' />
<input type='text' class='asdf' name='test15' id='text15' />
<input type='text' class='asdf' name='test16' id='text16' />
<input type='text' class='asdf' name='test17' id='text17' />
<input type='text' class='asdf' name='test18' id='text18' />
<input type='text' class='asdf' name='test19' id='text19' />
<input type='text' class='asdf' name='test20' id='text20' />
<input type='text' class='asdf' name='test21' id='text21' />
<input type='text' class='asdf' name='test22' id='text22' />
</form>
<script type="text/javascript">

$(document).ready(function() {
    $(".asdf").datePicker({ duration: '', dateFormat: 'dd/mm/yy' });
});

</script>
</body>
</html>

Outras dicas

O código está sujeito a NDA (não como no serviço secreto NDA, como nos, é relacionado com o trabalho NDA;)), então não posso mostrar o código real, no entanto, posso dizer que parte, é de uma página XSLT que gera automaticamente os campos.

Eu tenho uma entrada como assim

<input class="datepicker" name="{UNIQUE}-date" type="text" />
<a href="javascript:MyFunctionCall('linktype', '{UNIQUE}')">go</a>

Desta forma, em um formulário de envio Eu sei que o campo único, uma vez que eu postar-fix-lo com o identificador "-date" e pode começar a parte de trás de dados do campo de entrada HTML. O MyFunctionCall apenas submete dois valores do formulário, dessa maneira no meu código eu posso verificar para um valor forma de "linktype", de que maneira eu sei o que fazer com essa forma enviar. É um pequeno hack para diferenciar entre diferentes tipos de envio de formulário dentro do mesmo formulário.

Como mostrado antes:

$(document).ready(function() {
  $(".datepicker").datepicker({ duration: '', dateFormat: 'dd/mm/yy' });
});

Desta forma, ele recebe todas as entradas que têm esse tipo de classe.

Editar Como eu disse, isso é contra muitos campos, cerca de 100 por completo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top