我对此的了解非常有限,但我认为我遇到的问题是这个功能。它的作用是显示在项目帖子中选择的一些选项。从我看来它只在类别改变时加载。因此,当您编辑此帖子时,除非您将类别更改为另一个,然后还原为所需的类别,否则不会显示此功能。我希望每次都显示它,除了if语句中的那些类别。
请协助......
$(document).on('change', "#catId", function () {
var optgroups = $(this).children("optgroup[label='Nekretnine'], optgroup[label='Posao'], optgroup[label='Usluge'], optgroup[label='Poljoprivredni oglasi'], optgroup[label='Kućni ljubimci'], optgroup[label='Turizam']");
$(optgroups).each(function(){
if($(optgroups).children("option:selected").length){
$("#condition-container").html('');
} else {
$.ajax({
url: ajaxURL,
type: "get",
data: "request=condition-fields",
dataType: "html",
success: function(data) {
if(data) {
$("#condition-container").html(data);
}
}
});
}
});
});
答案 0 :(得分:2)
您只需要在文档加载时触发更改事件。所以根据你的改变功能把这段代码
$(document).on('change', "#catId", function () {
var optgroups = $(this).children("optgroup[label='Nekretnine'], optgroup[label='Posao'], optgroup[label='Usluge'], optgroup[label='Poljoprivredni oglasi'], optgroup[label='Kućni ljubimci'], optgroup[label='Turizam']");
$(optgroups).each(function () {
if ($(optgroups).children("option:selected").length) {
$("#condition-container").html('');
} else {
$.ajax({
url: ajaxURL,
type: "get",
data: "request=condition-fields",
dataType: "html",
success: function (data) {
if (data) {
$("#condition-container").html(data);
}
}
});
}
});
});
//Trigger change
$(document).ready(function () {
$("#catId").trigger("change");
});
答案 1 :(得分:0)
嗨,我假设您希望在文档加载和更改时触发该函数,但为此您需要使用2个触发器。
1)你已经有了改变触发器
2)使用$(document).ready()(https://learn.jquery.com/using-jquery-core/document-ready/)包装进行onload。
可能有一个更优雅的解决方案,但我没有JS专家所以这只会让你工作,虽然不是最温和的状态