JQuery поможет добавить функцию AJAX в поле ввода - PullRequest
0 голосов
/ 26 сентября 2011

Я пытаюсь добавить тот же Ajax-вызов, который запускается при смене флажка на поле ввода.

Вот функция, которую я также хочу добавить при изменении значения поля ввода:

                        $('#left input:checkbox').change(function() {
                                        $('#formcontent').empty().html('<p style="margin-top:20px;text-align:center;font-family:verdana;font-size:14px;">Vent venligst, henter webhosts.</p><p style="margin-top:20px;margin-bottom:20px;text-align:center;"><img src="../images/ajax.gif" /></p>');
                                        var form = $(this).closest('form');
                                        $.ajax({
                                                type: form.attr('method'),
                                                url: form.attr('action'),
                                                data: form.serialize(),
                                                success:function(msg){
                                        $('#formcontent').html(msg);
                        }
        });

Вот мой код слайдера.Который обновляет поле ввода:

                       $("#slider").slider({
    value:'',
    min: 0,
    max: 5000,
    step: 250,
    slide: function(event, ui) {
        if (ui.value == $(this).slider('option', 'max')) {
            $(ui.handle).html('Ubegrænset');
            $('#sliderValueplads').val('99999');
        } else {
            $(ui.handle).html(ui.value + ' MB');
            $('#sliderValueplads').val(ui.value);
        }
    }
}).find('a').html($('#slider').slider('value'));



$('#sliderValueplads').val($('#slider').slider('value'));

Вот мой HTML:

<div class="sliderdiv">
    <div id="slider"></div>
    <input type="text" style="display:none;" size="30" name="search[prisar_greater_than]" id="sliderValueplads">
</div>

Я попытался заменить эту строку в коде:

$('#left input:checkbox').change(function() {

наэто (не работает):

$('#left input:checkbox', '#sliderdiv input').change(function() {

Обновление Я попытался очистить код.Проблема в том, что страница вызова не запускается:

                                        function callpage() {
$('#formcontent').empty().html('<p style="margin-top:20px;text-align:center;font-family:verdana;font-size:14px;">Vent venligst, henter webhosts.</p><p style="margin-top:20px;margin-bottom:20px;text-align:center;"><img src="../images/ajax.gif" /></p>');
       var form = $(this).closest('form');
        $.ajax({
                 type: form.attr('method'),
                 url: form.attr('action'),
                 data: form.serialize(),
                 success:function(msg){
            $('#formcontent').html(msg);
                                        }
        $('#left input:checkbox').change(callpage);  

И я получаю эту ошибку в firebug:

missing } after property list [Break ved denne fejl] $('#left input:checkbox').change(callpage)

1 Ответ

0 голосов
/ 26 сентября 2011

Событие изменения не сработает в текстовом поле, если вы измените значение с помощью кода jQuery, вам нужно сделать что-то подобное в своем коде -

$('#sliderValue').trigger('change')

, чтобы вызвать изменениесобытие.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...