只是假装这个。我有一个带有下拉列表的页面,其中显示了我的自定义分类。选择某个项目时,我希望该页面从该分类中的帖子加载the_content。
到目前为止,我已经从所有内容中加载了内容,但是我似乎正在努力应对下拉列表。
在此页面模板上,我有一个使用wp_dropdown_categories的下拉列表:
<?php
$args = array(
'taxonomy' => 'company',
'hide_empty' => 0,
'orderby' => 'NAME',
'class' => 'chosen-select'
);
wp_dropdown_categories( $args ); ?>
这列出了我的自定义分类中的所有类别,它们在HTML中列为:
<option class="level-0" value="7">Customer ABC</option>
我现在还得到了一些JQuery,当提示下拉列表发生变化时提醒我:
$(".chosen-select").change(function () {
alert("Hello");
});
我想要做的是重新加载页面,以便我的PHP可以从自定义分类中获取类别ID并将其加载到我的循环中。 PHP是一个简单的部分,但是我已经有一段时间了,因为我已经完成了任何Javascript,而且我似乎有一点精神障碍。
我知道我需要使用
$(".chosen-select").change(function(value) {
window.location('?catid=' + value);
});
重新加载页面,但我不能为我的生活弄清楚如何从Wordpress的下拉列表中获取类别ID并将其传递给我的函数。有什么指针吗?
答案 0 :(得分:2)
您需要获取当前元素的值。您可以使用$(this)
选择当前元素,然后使用.val()
来获取其值。
请参阅以下修改后的代码:
$(".chosen-select").change(function(value) {
window.location = window.location.origin + window.location.pathname + '?catid=' + $(this).val();
});
更新:修改了上面的代码,使用origin
和pathname
来获取无查询的网址,以避免重复和冲突。