2015-12-12 3 views
2

Я передаю этот массив через ajax, но не совсем уверен, что он должен быть выражен в разделе данных.код для данных при прохождении через массив

<input type="button" data-cats="{"type":"commercial","sub":"humidity","main":"wireless-sensors"}" id="button" value="click"><input type="text" value="21" id="no_value"> 

Массив на самом деле идет от json_encode($cats)

$('#button').click(function(){ 
    cats = $(this).attr('data-cats'); 
    no_val = $('no_val').val() 
    $.ajax({   
     type : 'POST', 
     dataType : 'json', 
     url  : 'ajax.php', 
     data : 'cats='+cats+'&no_val='+no_val, 
     success : function(data) { 
      $('#result').html(data); 
     } 
    }); 
}); 

Передача массива в cats не кажется, работает. Я предполагаю, что он, вероятно, должен быть своего рода json-кодом, но я не знаю, каким он должен быть. Я хочу, чтобы иметь возможность извлекать элементы массива в hte ajax.php файл.

+0

Как кодировать данные зависит от того, как принимающая сторона ожидает его кодирования. –

+0

Также убедитесь, что вы исправили опечатку в строке 3: id обязательно должен читать '$ (' no_value ')', как в вашем xml. – marc

ответ

0
<input type="button" data-cats="{"type":"commercial","sub":"humidity","main":"wireless-sensors"}" id="button" value="click"><input type="text" value="21" id="no_value"> 

Неправильный HTML. Атрибут закрывается после открытия {. Вместо этого вы можете использовать одинарные кавычки.

+0

Нет его штрафа, его '' –

+0

@JackQueen: Нет, это не нормально. –

+0

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

Смежные вопросы