2012-06-13 2 views
0

Как добавить функцию jquery onclick с диапазоном?Функция Jquery onclick

Теперь у меня есть такой промежуток, где я хотел бы добавить представить функцию к нему:

<input type="radio" name="language" id="engl" value="Engl" checked> 
    <span class="division" onclick="document.getElementById('engl').checked = true">English</span> 

Я пытался добавить в свой код, который:

$('span.division').change(function() { 
    $('#search-form').submit(); 
    }); 

Но нет результата. И, конечно же, я попытался добавить «имя» в «span», он тоже не имеет результата. Вот мой jquery-код:

<script type='text/javascript'> 
    $(function(){ 
    $('input[name=language]').change(function() { 
    $('#search-form').submit(); 
}); 
    $("form#search-form").submit(function(){ 
    $("#results").fadeOut(); 
    $.ajax({ 
     type:"GET", 
     data: $(this).serialize(), 
     url: "search.php", 
     success: function(msg) 
    { 
    $("#results").html(msg); 
    $("#results").fadeIn(); 
    } 
    }); 
    return false; 
    }); 
}); 
</script> 

Где моя ошибка? И как я мог сделать это правильно?

+0

span не изменен :) он нажал – deerua

ответ

1

использовать on() метод JQuery с событием click вместо изменения:

$('span.division').on("click", function() { 
    $('#search-form').submit(); 
}); 

Заметим, однако, что это может помешать событие щелчка вы определили на вашем пролете через инлайн onclick="..."!

+0

Большое спасибо! Какая глупая ошибка. Я понял это слишком поздно. – zmogusnamas

1

Используйте событие click вместо события изменения для диапазона и переместите функцию привязки отправки к документу ready. Я просто немного очистил ваш код. Это должно сработать.

<script type='text/javascript'> 
    $(function(){ 

     $('span.division').click(function() { 
      $('#search-form').submit(); 
     }); 

     $("form#search-form").submit(function(e){ 
      e.preventDefault(); 
      $("#results").fadeOut(); 
      $.ajax({ 
       type:"GET", 
       data: $(this).serialize(), 
       url: "search.php", 
       success: function(msg){ 
          $("#results").html(msg).fadeIn();      
        } 
      }); 
     }); 

    }); 
</script> 
+0

Спасибо! Это работает хорошо. – zmogusnamas

+0

@zmogusnamas: Добро пожаловать. – Shyju