2016-12-24 3 views
0

Я хочу добавить данные в jquery. Модальное через onclick и передать массив в функцию создает проблему. Мой код выглядит следующим образом: -Array Передано JavaScript Функция через onClick создает [object, object]

var ttlpndordsqnty = topBarData['ttlpndngordrs'].length; 
var ttlpndordsdata = topBarData['ttlpndngordrs']; 
$('#totalpendingtestorders').empty(); 
$('#totalpendingtestorders').append('<a onClick="populateWidgetInfo(\''+ttlpndordsdata+ '\')" class="count red" data-toggle="modal" data-target="#totalpndgordModal"><label >' +ttlpndordsqnty+ '</label></a>'); 

function populateWidgetInfo(data) 
{ 
    console.log(data); 

} //end function 

Когда я нажимаю на это, то вместо переданного массива возвращается следующее. Пожалуйста, помогите мне?

[object Object],[object Object],[object Object] 
+0

Что делает 'console.log (ttlpndordsdata)' give? – RomanPerekhrest

+0

Это массив из 3 объектов. Какова ваша точка – Devian

+2

В этой строке '$ ('# totalpendingtestorders'). Append ('');' ваш ttlpndordsdata преобразуется в строку и передается вашей функции после нажатия. Вот почему ваш журнал: '[object Object], [object Object], [object Object]' – Karlen

ответ

2

ttlpndordsdata преобразовывается в строку в параметре атрибута обработчика событий. Использовать .on()

$('#totalpendingtestorders') 
.on("click", "a.count", function() { 
    opulateWidgetInfo(ttlpndordsdata) 
}) 
+0

Я собирался ответить на этот вопрос :) – Karlen

+0

@Karlen Почему вы еще не можете отправить ответ? Ваша интерпретация Вопроса, объяснения и подхода может содержать более подробную информацию и описание проблемы и решения, чем настоящий Ответ; и потенциально могут быть полезны для OP и SO. – guest271314

+0

Вы уже ответили на него, поэтому не нужно дублировать – Karlen