Как добавить окно поиска IxQuick в теги формы, «вложенные» в теги формы asp.net, с функцией отправки.
Salve! У меня была похожая проблема. У меня была страница aspx, построенная на главной странице, которая содержала тег формы asp.net. Теперь я хотел найти окно поиска Ixquick на этой странице, но мне нужно было заключить его в теги формы, чтобы оно работало; но, конечно, у вас не может быть вложенных тегов формы на странице aspx.
Вот как я решил свою проблему:
Я создал всю строку поиска в jquery и добавил ее на страницу aspx, используя jquery для замены пустого div. Javascript запускается на клиенте после , когда сервер обслуживает свой код, таким образом обходя любую проблему с вложенными div-файлами. Это также позволяет избежать проблем с поведением отправки главной страницы для тега формы главной страницы. Вы получаете свой собственный тег формы в выводимом html и свое собственное поведение при отправке.
Поместите эти две строки на страницу aspx, где должно отображаться окно поиска.
<div id="search"></div>
<script type="text/javascript">AddSearchBox("#search");</script>
И в моем файле .js я добавил:
function AddSearchBox(where){
var SearchingForm = "<form id='metasearch' name='metasearch' method='POST' accept-charset=' UTF-8' action='javascript:SearchBarSubmit()' ><input name='keyword' type='text' size='32' id='searchbox' /><input type='submit' value='WebSearch' id='searchbutton' /></form> "
$(where).html(SearchingForm);
return false;
}
function SearchBarSubmit(){
var searchquery = $('#searchbox').val();
location.href="http://ixquick.com/do/metasearch.pl?query=" + searchquery + "&cat=web&language=english&cmd=process_search&frm=sb&linkback_url=http://www.mywebsite.com&linkback_sitename=mySiteName";
return false;
}
Теперь, когда кто-нибудь вводит в мое окно поиска, он автоматически запускает поисковый запрос в IxQuick и отображает результаты - как в обычной HTML-форме. И что лучше, если у них не включен javascript, у них не будет сломанного окна поиска, потому что они вообще не получают окна поиска! Я не возражаю против этого, потому что я добавляю окно поиска ради того, чтобы быть изящным.
Если вы используете этот код, обязательно замените «www.mywebsite.com» на свой собственный веб-сайт и обязательно измените ссылку «mySiteName» на имя вашего веб-сайта.