событие флажка onclick - PullRequest
       9

событие флажка onclick

0 голосов
/ 25 февраля 2012

Все, что я пытаюсь сделать, это нажать на флажок, добавить его значение к URL и перенаправить .. Как мне это сделать ??

$(document).ready(function() {   
    var url = 'http://mysite.com/results.aspx';   
        $('.LocType').click (function ()
            {
                var thisCheck = $(this);
            if (thischeck.is (':checked'))
             {
            // Do stuff
             window.location.href = "http://www.yahoo.com";  

             }
        });
}); 

<div class="MyOptions"> 
    Hospitals<input class="LocType" type="checkbox" value="Hospital"/> &#160;  
    Offices<input class="LocType" type="checkbox" value="Office"/> &#160;  
    Facilities<input class="LocType" type="checkbox" value="Facility"/> 
</div> 

Ответы [ 2 ]

1 голос
/ 25 февраля 2012

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

$('.LocType').click (function () {
   if (this.checked) {
       // Do stuff
       window.location.href = "http://www.yahoo.com?paramNameHere=" + this.value;
   }
});

Вам не нужно $(this) внутри функции, потому что this достаточно, чтобы просто проверить состояние checked и получить value.

Вы не сказали, как должен выглядеть итоговый URL, поэтому я просто добавил значение с помощью универсального paramNameHere параметр.

0 голосов
/ 25 февраля 2012

если вы настроите свою функцию для получения параметра, javascript выдаст вам событие с элементом, инициирующим событие, вы можете архивировать это со следующим кодом:

$('.LocType').click (function (e) {
   if (this.checked) {
       // Do stuff
       window.location.href = "http://www.yahoo.com" + e.target.value;
      //e.target is the element that fire up the event
   }
});
...