我試圖在複選框被選中時將多個值添加到特定數據參數'category_values'
。如何將多個值作爲對象添加到jQuery ajax請求中的單個參數?
category = []
jQuery('#rpd_filter_categ:checked').map(function() {
category.push(jQuery(this).attr('data-value'));
});
category = jQuery('#rpd_filter_categ:checked').attr('data-value');
jQuery.ajax({
type: 'POST',
url: ajaxurl,
// dataType: 'json',
traditional: true,
data: {
'action' : 'ajax_filter_listings',
'action_values' : action,
'category_values' : category,
...
},
success: ...
function ajax_filter_listings(){
$categ_array = '';
$allowed_html = array();
if (isset($_POST['category_values']) && trim($_POST['category_values']) != 'All Types' && $_POST['category_values']!=''&& $_POST['category_values']!='all' && $_POST['category_values']!='all-types'){
$taxcateg_include = sanitize_title (wp_kses( $_POST['category_values'],$allowed_html ));
$categ_array=array(
'taxonomy' => 'property_category',
'field' => 'slug',
'terms' => $taxcateg_include
);
}
它適用於一個單一的檢查選項,但與2+選項選中或者獲得:
- 沒有結果
- 只有第一個選項的字母順序
- 最後選項選擇
當我檢查console -> request -> postData
它:
- 將值之間的字符
%2C
- 創建用於第二個值
我只是困惑自己進一步更我看看這個...任何人都可以點我朝着正確的方向的新對象?
任何幫助非常感謝!
要嘗試和更好地解釋......我試圖使用數據值的屬性(公寓,排屋,別墅等)來創建array/object發送給jQuery ajax請求作爲'category_values',這樣當選項被選中時,php會用這些數據值過濾結果。 – Jeff