Я просматривал документы jQuery , и я думаю, что мы можем сделать это в одной строке с помощью селекторы :
$("#myForm :input[value!='']").serialize() // does the job!
, Очевидно, #myForm получает элемент с идентификатором "myForm", но что было менее очевидно для меня, сначала был то, что пробел необходим между #myForm и: вход, как это потомок оператор.
: вход соответствия весь вход, текстовая область, выбор и элементы кнопки.
[значение! =, ''] атрибут не равный фильтр. Странное (и полезный) вещь то, что все: вход типы элемента имеют атрибуты значения, даже выбирает и флажки и т.д.
Наконец, чтобы также удалить исходные данные, где значение 'было' (как упомянуто в вопросе):
$("#myForm :input[value!=''][value!='.']").serialize()
В этом сопоставлении случая, т.е. размещение двух селекторов атрибута друг рядом с другом , подразумевает И. Используя запятую подразумевает ИЛИ. Извините, если это очевидно для людей CSS!
There are nice samples on Chrome Experiments
From the about page:
These experiments were created by designers and programmers from around the world using the latest open standards, including HTML5, Canvas, SVG, and more
Обратитесь к Bespin из Mozilla Labs - это редактор кода, полностью написанный на JavaScript с использованием Canvas.
Кроме того, это может быть не «образец» само по себе, но Canvas Tutorial в Mozilla Developer Center - очень хорошее введение в элемент
.