Создание более одного изменения обратного вызова с плагином DropKick jQuery
-
12-12-2019 - |
Вопрос
Я использую отличные Properkick jQuery Plugin в рамках поискового объекта на сайте.Dropkick является укладкой в поле «Выбор», который пользователь использует, чтобы выбрать, какой веб-сайт для поиска.Пользовательский поиск Google используется, и я был успешным в сообщении DropKick изменить значение скрытого поля «#cx» - поле #CX сообщает Google, какую учетную запись в использовании.
Вот HTML:
<form action="http://example1.com/search/" method="get" id="cse-search-box">
<fieldset>
<input type="hidden" name="cx" id="cx" value="custom_search_account_1" />
<input type="hidden" name="cof" value="FORID:11" />
<input type="hidden" name="ie" value="UTF-8" />
<div class="keywords">
<label for="keywords">Search</label>
<input type="text" name="q" id="keywords" class="search text" />
</div>
<select name="dk" class="dk">
<option value="custom_search_account_1">Search website 1</option>
<option value="custom_search_account_2">Search website 2</option>
<option value="custom_search_account_3">Search website 3</option>
</select>
<input type="image" class="button" src="imgurl" alt="Search" name="sa" />
</fieldset>
</form>
.
Вот рабочий код JQuery, который меняет значение скрытого поля «#CX» в зависимости от поисковой системы, пользователь выбирает:
$('.dk').dropkick({
change: function (value, label) {
var x = $(this).val();
$('#cx').val(x);
}
});
.
Это все здорово.Тем не менее, действие формы также необходимо изменять в зависимости от выбора пользователя.Это возможно, используя этот плагин?Если это так, какие изменения в коде jQuery мне нужно сделать, пожалуйста?Я уже толкнул границы моих знаний с этим!
заранее спасибо за любую помощь.
Приветствия
Решение
Изменение метода действия так же просто, как изменение любого другого атрибута. Таким образом, в вашем методе .Change просто сделайте проверку и измените действие, соответствующее значением.
$('.dk').dropkick({
change: function (value, label) {
var x = $(this).val();
var action;
$('#cx').val(x);
if (x == 'custom_search_account_1') { action = 'action1'; }
else if (x == 'custom_search_account_2') { action = 'action2'; }
else if (x == 'custom_search_account_2') { action = 'action2'; }
$('#cse-search-box').attr('action', action);
}
});
.