Как мне отфильтровать все идентификаторы, которые начинаются с "pre" или "radio"?
$.each($(':input[id^="pre"]',':input[id^="radio"]').serializeArray(), function() {
ваш селектор был немного выключен:
$('input[id^="pre"], input[id^="radio"]').each(function () {});
или если вы хотите сериализовать набор возвращаемых объектов:
$('input[id^="pre"], input[id^="radio"]').serializeArray();
Не разбивайте ваши селекторы на отдельные строки:
$(':input[id^="pre"], :input[id^="radio"]')
Несколько селекторов - это одна строка.
Смотрите это скрипка . Я думаю, это то, что вы пытаетесь сделать.
$(":input[id]").filter(function() { return this.id.match(/^(pre|radio)/)});