Включить данные формы в середине атрибута "action" - PullRequest
0 голосов
/ 21 марта 2012

Я работаю над созданием более удобной для пользователя страницы доступа к веб-интерфейсу в Wordpress для библиотеки контента, основанной на ContentDM (http://www.oclc.org/support/questions/contentdm/default.htm).) Одна из вещей, которая была запрошена как часть сайта, была поисковая форма, которая вместо поискаWordpress, идет в библиотеку ContentDM и ищет там.

Похоже, что синтаксис поиска для ContentDM выглядит следующим образом:

http://libraryID.contentdm.oclc.org/cdm/search/searchterm/INPUT_TERM/order/nosort

При любом значении INPUT_TERMпользователь искал.

Другими словами, чтобы создать форму поиска, которая шла прямо туда, мне нужно было бы динамически вставить содержимое элемента ввода в середину атрибута "action"форма.

Полагаю, лучше всего просто отправить его на страницу PHP, которая вставляет $ _POST ['what'] в URL и выполняет перенаправление. Но на самом деле есть способсделать это динамически из формы (в идеале без Javascript) и сохранить шаг?

Спасибо!

1 Ответ

1 голос
/ 21 марта 2012

Полагаю, что-то подобное может сработать:

<form action="" method="get"
    onSubmit="location.href='http://libraryID........./'+this.children[0].value+'/order/nosort; return false;">
    Search: <input type="search" />
    <input type="submit" value="Go" />
</form>

Это перенаправит браузер на страницу поиска, указанную в окне поиска, однако это не очень надежно.

Возможно, вы захотитечтобы увидеть, есть ли строка запроса "версия" URL-адреса - возможно, на этот поисковый URL-адрес mod_rewrite влияет на "красивый вид", и вы можете иметь в качестве действия http://libraryID.contentdm.oclc.org/cdm/search и иметь поле ввода с именем searchterm:

<form action="http://libraryID.contentdm.oclc.org/cdm/search" method="get">
    Search: <input type="search" name="searchterm" />
    <input type="submit" value="Go" />
</form>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...