Надо тут было сделать операцию, обратную методу jQuery.serialize(), т.е. по GET-строке заполнить форму. Вроде ничего не нашел, подумал, что написать будет быстрее, чем копаться. То, что получилось — раздаю всем желающим, возможно, кому нибудь час-другой сэкономит.
Брать здесь:
github.com/maxatwork/jquery.deserialize
UPD: Спасибо всем за багрепорты!
UPD: Товарищ nayjest подсказывает, что нужны варианты применения.
Мне нужно было для навигации по результатам ajax-поиска:
— форма сериализуется, результат пишется в window.location.hash
— при загрузке страницы данные из location.hash десериализуются, а форма отправляется на сервер.
Тогда остается поиск без перезагрузки страницы, но по прежнему можно скопировать ссылку на результат выдачи, и отправить ее знакомому, например.
В случае jQuery Form Plugin это выглядит примерно так:
Брать здесь:
github.com/maxatwork/jquery.deserialize
UPD: Спасибо всем за багрепорты!
UPD: Товарищ nayjest подсказывает, что нужны варианты применения.
Мне нужно было для навигации по результатам ajax-поиска:
— форма сериализуется, результат пишется в window.location.hash
— при загрузке страницы данные из location.hash десериализуются, а форма отправляется на сервер.
Тогда остается поиск без перезагрузки страницы, но по прежнему можно скопировать ссылку на результат выдачи, и отправить ее знакомому, например.
В случае jQuery Form Plugin это выглядит примерно так:
$(document).ready() {
$("#searchForm")
.ajaxForm( myFormCallback )
.deserialize(window.location.hash)
.submit()
.change( function () {
window.location.hash = $(this).formSerialize();
$(this).submit();
});
function myFormCallback(response) {
//do smth
}
}