gpt4 book ai didi

javascript - ajax 调用后 JQuery 日历不工作,但按钮在那里?

转载 作者:行者123 更新时间:2023-11-28 01:05:17 24 4
gpt4 key购买 nike

我在使用 JQuery 日历时遇到问题,它在调用 ajax 后不起作用。我尝试了很多选项,但其中任何一个都有效

这是我的js:

function carregar(metodo, div) {
var loading = new Image();
loading.src = "${resource(dir: 'images', file: spinner.gif)}";
$.ajax({
url: metodo,
type: "GET",
dataType: 'text',
beforeSend: function () {
$("#" + div).html(loading);
},
success: function (data) {
$("#" + div).html(data);

}
});
}

$(function () {
$("#nascimento").datepicker({
showOn: "button",
buttonImage: "http://jqueryui.com/resources/demos/datepicker/images/calendar.gif",
buttonImageOnly: true
});
});

这是索引,我在其中调用 ajax 函数:

<%@ page contentType="text/html;charset=UTF-8" %>
<html>
<head>
<meta name="layout" content="main" />
<title>Cadastrar Aluno</title>
</head>
<body>
<input type="button" value="Novo" onClick="carregar('/aluno/novo', 'divForm')"/>
<input type="button" value="Pesquisar" onClick="carregar('/aluno/pesquisar', 'divForm')"/>


<div id="divForm">
<g:render template="form"></g:render>
</div>
</body>
</html>

这是我的表单模板:

<asset:javascript src="application.js"/> 
<g:uploadForm controller="aluno" action="salvar">
//other fields
<label>Data de Nascimento:</label>
<input type="text" name="nascimento" id="nascimento" required="true" value="<g:formatDate format="dd-MM-yyyy" date="${aluno?.nascimento}"/>"/><br>
//other fields
<input type="submit" value="Salvar"/>
<input type="button" name="btnCancelar" value="Cancelar"/>
<input type="hidden" name="id" value="${aluno?.id}">
</g:uploadForm>

如果我放

<script type="text/javascript">
$(function() {
$( "#nascimento" ).datepicker();
});
</script>

在模板中,ir 工作一次,如果我在重新加载页面后再次加载“表单”模板,它不会。

我试过这个: jquery datepicker doesn't work after ajax call if its already on page JQuery datepicker not working after ajax call jQuery datepicker does not work after Ajax call

你们有什么想法吗?

谢谢!

最佳答案

当您重新加载您的 html 时,您正在破坏附加了日期选择器的元素并重新创建它。

因此,您需要在替换 html 后重新初始化日期选择器,如下所示:

                 success: function (data) {
$("#" + div).html(data);
$("#nascimento").datepicker('remove').datepicker({
showOn: "button",
buttonImage: "http://jqueryui.com/resources/demos/datepicker/images/calendar.gif",
buttonImageOnly: true
});

}

关于javascript - ajax 调用后 JQuery 日历不工作,但按钮在那里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40065590/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com