2016-02-29 6 views
0

Мне нужно опубликовать значения выбранных флажков в группе флажков на сервере. В конечном счете меня не беспокоит имя флажка, а только список входных значений.extjs 6 checkbox group getValue

Как отправить их на сервер? если я использую ПолучитьЗначение() я получаю объект доб features, используя ext.encode на объекте я получаю это

{"feature-3":"3","cfeature-5":"5","feature-7":"7", 
"feature-10":"10","feature-12":"12","feature-13":"13", 
"feature-15":"15","feature-18":"18"} 

Я не забочусь, если данные разобран до или после того, как пост на сервере, но я необходимо иметь возможность прокручивать данные в php и получать значения 3..5..7 и т. д. в качестве значений, когда я просматриваю данные.

Каков наилучший способ отправки значений checkboxgroup на сервер? Я использую вызов AJAX, как это:

Ext.Ajax.request({ 
     scope: this, 
     timeout: 1200000, 
     url: './data/saveUsedFeatures.php', 
     method: 'POST', 
     params: { 
features: features 
}, 

мне нужно понять, как и передавать данные и обрабатывать его в PHP.

ответ

1

Прежде всего, кодируйте свои объекты, чтобы получить строку json.

Ext.Ajax.request({ 
    scope: this, 
    timeout: 1200000, 
    url: './data/saveUsedFeatures.php', 
    method: 'POST', 
    params: { 
    features: Ext.encode(features) 
} 

и на стороне сервера декодирования, что строка, чтобы получить массив:

<?php 
    $arr= json_decode($_REQUEST["features"],true); 
    foreach($arr as $v){ 
     //your logic here 
    } 
?> 

Или

Второй вариант заключается в использовании form.submit() вместо Ext.ajax. вы получите массив значений группы флажков. например, если ваша группа checkboxgroup имеет свойство name:'checkboxgroup' со стороны сервера:

<?php 
    foreach($_REQUEST["checkboxgroup"] as $v){ 
     //your logic 
    } 
?>