как сделать и получить доступ к массиву в JQuery - PullRequest
1 голос
/ 30 августа 2011
var buttons =$('input[type="button"]');
var arr = (buttons).makeArray;
for(i=0;i <= arr.length ; i++  )
{ $('.chat_tabs').append(arr[i]).val() ;}

это не работает, это правильный путь, что еще я должен сделать, видел много вопросов, но не в состоянии связать и понять себя правильно, в первой строке a извлек все элементы DOM, которые являются кнопками введите, я хочу извлечь значение из всех них, а также запустить цикл, чтобы напечатать их все или даже, если хотите сравнить или сделать что-то еще .... главная задача - сделать их массивными и извлечь значения во время выполнения цикла.

Ответы [ 2 ]

2 голосов
/ 30 августа 2011
$('input[type="button"]').each(function(){

    $("div").append($(this).val()+"<br/>");
    //alert($(this).val());

});

здесь - скрипка http://jsfiddle.net/d9xQP/2/

, смотрите .each

здесь ваш код

var buttons =$('input[type="button"]');
for(i=0;i < buttons.length ; i++  )
{

    $('.chat_tabs').append(buttons.eq(i).val()+"<br/>");
}

http://jsfiddle.net/d9xQP/4/

1 голос
/ 30 августа 2011

Что-то не так с вашим кодом, но я полагаю, вы хотите сделать что-то подобное?

Код

var buttons =$('input[type="button"]');
var arr = $.makeArray(buttons);

for(i=0;i <= arr.length ; i++  )
{ $('.chat_tabs').append($(arr[i]).val()) ;}

jsFiddle Demo

Объяснение

  • Makearray должен вызываться с вещью, которую вы хотите превратить в массив ВНУТРИ скобок.
  • У вас есть .val () после вашего добавления, я предполагаю, что вы хотите получить значение кнопки, а не значение добавления.

Лучший вариант

Однако этовсе можно сделать более кратко, используя что-то вроде этого:

var arr = $('input[type="button"]').map(function(){return $(this).val();}).get();
$('.chat_tabs').append(arr.join(' '));

jsFiddle Demo
jQuery Api на .map ()
jQuery Api на .get ()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...