我有一个带有按钮的 View ,按钮下方是一个使用 ajax 和局部 View 填充的 div。
这是属于 View 上按钮的代码;
$(document).on('click', '.btn-release', function () {
StartReleaseVersionEdit();
ReleaseVersionEdit();
}
使用 Ajax 我可以更改显示在表格内的数据,当我单击页面顶部的按钮时会发生这种情况;
function StartReleaseVersionEdit() {
var url = '@Url.Action("ChangelogMavisTabel")';
url = url + '?order=0&paging=1000';
$.ajax({
type: "GET",
cache: false,
url: url,
success: function (data) {
$("div#changelog").html(data);
}
});
}
此代码可以完美运行。一旦我想使用 JQuery 更改此部分 View 中元素的 css 以将显示设置为无,它会工作一瞬间,但随后立即返回其默认值。
function ReleaseVersionEdit(){
$('.releasebutton').css('display','inline');
// .releasebutton default display=none
}
我该怎么做才能使它正常工作?我不能将 JQuery 放在局部 View 的代码中,因为它是由 View 上的按钮触发的。
最佳答案
将 ReleaseVersionEdit()
函数移动到 AJAX 调用的成功方法中,这样您就可以保证它仅在部分加载后调用。请记住 AJAX 调用是异步的 - jQuery.ajax() :
$(document).on('click', '.btn-release', function () {
StartReleaseVersionEdit();
// ReleaseVersionEdit(); Remove from here as this could execute before the partial is loaded
}
function StartReleaseVersionEdit() {
var url = '@Url.Action("ChangelogMavisTabel")';
url = url + '?order=0&paging=1000';
$.ajax({
type: "GET",
cache: false,
url: url,
success: function (data) {
$("div#changelog").html(data);
ReleaseVersionEdit(); // Added here so will always be called after the partial has been loaded
}
});
}
关于jquery - 使用 JQuery 在局部 View 中更改 css,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39699239/