Разделите пары данных с помощью функции jQuery

0

Используя jQuery, я хочу выбрать некоторые данные и разделить пары с разделителем.

Мой код:

var checkboxes = [];
$('input[name="CheckBox3"]:checked,select[name=ansprechpartner]').each(function() {
    checkboxes.push($(this).val());
    checkboxes.push(":");
});

Выход кода:

1998,:,1292,2006,:,1128,2630,:,3030,:

Требуемый вывод кода:

1998:1292,2006:1128,2630:3030 

Пример HTML

<tr class="Row">
    <td style="TEXT-ALIGN: right">
        <input type="checkbox" id="kontakteCheckBox3" class="idRow" value="2006" name="CheckBox3">&nbsp;</td>
    <select id="ansprechpartner" class="ansprechpartner" name="ansprechpartner">
        <option selected value="">-</option>
        <OPTION VALUE="1292">Abels</OPTION>
        <OPTION VALUE="1295">Delta</OPTION>
        <OPTION VALUE="1298">Extra</OPTION>
    </select>
    </td>
</tr>

<tr class="Row">
    <td style="TEXT-ALIGN: right">
        <input type="checkbox" id="kontakteCheckBox3" class="idRow" value="2008" name="CheckBox3">&nbsp;</td>
    <select id="ansprechpartner" class="ansprechpartner" name="ansprechpartner">
        <option selected value="">-</option>
        <OPTION VALUE="1392">Abels</OPTION>
        <OPTION VALUE="1495">Delta</OPTION>
        <OPTION VALUE="1198">Extra</OPTION>
    </select>
    </td>
</tr>

Я не знаю, как это исправить.

Спасибо

Теги:

2 ответа

0

Пересмотренное решение

Основываясь на предоставленном html, перемещайте родительскую строку

var output=$('input[name="CheckBox3"]:checked').map(function(){
    var selVal=$(this).closest('tr').find('select[name=ansprechpartner]').val() | 0;
  return  this.value +':'+ selVal;
}).get().join()

DEMO

  • 0
    можно попробовать это ... не видя html, чтобы ссылаться придется спорить, можно использовать индекс ... traverse будет работать, если бы мог видеть html
  • 0
    выход всегда: 1998: 1292: 2006: 1128: 2630: 2354
Показать ещё 6 комментариев
0

использование

var checkboxes = $('input[name="CheckBox3"]:checked').map(function () {
    return this.value + ':' + $(this).closest('tr').find('select').val();
}).get();
var str = checkboxes.join(':')
  • 0
    спасибо, это работает, но пары также должны быть разделены с разделителем,
  • 0
    @ user2083524 что такое спаривания? флажок: флажок или флажок: выбрать
Показать ещё 5 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню