Problemas encontrados:
Uma página contém vários seletores de tempo renderizados, como segue:
html:
<td colspan="5">
<input type="text" name="StartTime" autocomplete="off" placeholder="请选择开始时间" class="layui-input dzstartTime">
<span>到</span>
<input type="text" name="EndTime" autocomplete="off" placeholder="请选择结束时间 class="layui-input dzendTime">
<span>止</span>
</td>
Renderização:
var StartImpTime = layui.laydate.render({
elem: '.startTime',
theme: '#57B869',
type: 'datetime'
});
var EndImpTime = layui.laydate.render({
elem: '.endTime',
theme: '#57B869',
type: 'datetime'
});
Neste momento, o seletor de tempo não abrirá ou piscará de volta.
Solução:
1. Certifique-se de que não haja problemas com a introdução de layui.js;
2. Se você estiver usando um elemento de entrada, adicione o atributo lay-key à tag de entrada, atribua valores em sequência, não repita, conforme a seguir:
<input type="text" name="StartTime" autocomplete="off" placeholder="请选择开始时间" class="layui-input dzstartTime" lay-key="1">
<span>到</span>
<input type="text" name="EndTime" autocomplete="off" placeholder="请选择结束时间" class="layui-input dzendTime" lay-key="2">
3. Ao renderizar, substitua trigger: 'focus' por trigger: 'click', como segue:
var StartImpTime = layui.laydate.render({
elem: '.startTime',
theme: '#57B869',
type: 'datetime',
trigger: 'click'
});
var EndImpTime = layui.laydate.render({
elem: '.endTime',
theme: '#57B869',
type: 'datetime',
trigger: 'click'
});
A segunda e a terceira etapas não são definidas ao mesmo tempo. Você pode testá-lo. Alguns problemas podem ser resolvidos atribuindo o lay-key. Não resolvi o problema do flashback por meio da configuração do lay-key, então tentei o terceiro passo e gatilho adicionado: 'click' , atualmente usado sem problemas.