чекбокс onclick передает значение chechbox как строку запроса на URL - PullRequest
1 голос
/ 25 февраля 2012

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

строка запроса должна быть такой: mysite.com/result.aspx?k=Hospital ИЛИ офис или объект если все три флажка установлены один за другим, поэтому при первом включении Больницы он будет перенаправлен на mysite.com/result.aspx?k=Hospital и во второй раз, когда установлен флажок Офисы, и добавится к существующему URL значение, например mysite.com/result.aspx?k=Hospital ИЛИ Office и т. д. ...

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

** Это не работает .. кто-нибудь может направить меня. Я не очень хорош с Jquery ..

$(document).ready(function() {  
    var url = 'http://mysite.com/results.aspx';  
    $(".MyOptions input").click(function() { 

        var urlValues = window.location.href.split("k=(")[1]; 
        urlValues = urlValues.substring(0,urlValues .length - 1); 

        var checkboxValues = $("input[name=LocType]:checked").map(function() {return "\"" + this.value + "\"";}).get().join(" OR ") 

        if (urlValues.length > 0) 
            urlValues += " OR " + checkboxValues; 


     window.location.href = "http://mysite.aspx/result.aspx?k=" + urlValues;

        });

**

1 Ответ

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

Это неправильный способ отправки флажков на сервер. У вас есть пользовательский процесс парсинга строки запроса на другом конце? В любом случае, измените вашу карту, чтобы использовать jquery $ (this):

var checkboxValues = $("input[name=LocType]:checked").map(function() {return "\"" + $(this).val() + "\"";}).get().join(" OR ")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...