Создание более одного изменения обратного вызова с плагином DropKick jQuery

StackOverflow https://stackoverflow.com//questions/12689875

Вопрос

Я использую отличные 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);

     }
});
.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top