2012-05-23 61 views
0

這是我第一次發佈我的查詢在stackoverflow。我創建了一個表單,並且在表格中有幾個城市的下拉菜單。在下拉式更改相關組單選按鈕顯示。每個單選按鈕與「preferred_location」具有相同的名稱。Jquery和單選按鈕事件後部分變得可見

在任何選擇單選按鈕我想標記一個複選框爲CHECKED。我已經在網上嘗試了很多選項,他們聽起來很簡單,並且在演示中工作,但不在我的代碼中。要檢討,我已經在這裏張貼了我的代碼示例如下:

jQuery腳本

$(document).ready(function(){ 
     $("#address input[name*='redio']").click(function() { 
      $('#note').removeClass("inactive").addClass("active"); 
     }); 
    }); 

要在下拉菜單中更改顯示的單選按鈕組,我使用下面的代碼

if(valuecheckdrop == "Coimbatore"){ 
    $("#address").html("<h2>Select date of info session:</h2>", 
     "<p>", 
     "<input type='radio' name='preferred_location' value='Radio1' class='redio' /> Radio1", 
     "</p>", 
     "<p class='sub'>address</p>", 
     "<p class='option'>", 
      "<input type='radio' name='preferred_location' value='Radio2' class='redio' />Radio2", 
     "</p>", 
     "<p class='sub'>Address2</p>"); 
} 

在下拉變化組單選按鈕顯示,但單擊單選按鈕時不會發生任何事情。

這是因爲我打電話單選按鈕改變事件的下拉?任何幫助將不勝感激。

+1

'輸入[姓名* = 'redio']' - 使用'輸入[類型= '無線電']' – ahren

+0

抱歉,但是這也不能在我結束工作..我知道它很容易,但沒有找到理由爲什麼它不在我的最後。 – Jeet

回答

0
$(document).ready(function() { 
       $("#graduate").change(function() { 
        var valuecheckdrop = $("#graduate").val(); 
        $('#cbTest').prop('checked', false); 
        if (valuecheckdrop == "") { 
         $("#note").show(); 

         //$("#address").removeClass("addresson").addClass("addressoff"); 
         //Or 
         $("#address").html(''); 

        } else { 
         $("#note").hide(); 

         //$("#address").removeClass("addressoff").addClass('addresson'); 

         switch (valuecheckdrop) { 
          case 'Bangalore': 
           $("#address").html("<h2>Select date of info session:</h2><p><input type='radio' name='preferred_location' value='June 2, 2012, Sat 11am - 1pm The Presidency, No. 1 St Marks Road' class='redio' /> June 2, 2012 <span>(Sat 11am - 1pm)</span></p><p class='sub'>The Presidency, No. 1 St Marks Road</p><p class='option'><input type='radio' name='preferred_location' value='June 2, 2012, Sat 3pm - 5pm Manipal Center, Dickenson Road' class='redio' /> June 2, 2012 <span>(Sat 3pm - 5pm)</span></p><p class='sub'>Manipal Center, Dickenson Road</p><p class='option'><input type='radio' name='preferred_location' value='June 3, 2012, Sun 12noon - 5pm Taj Gateway Hotel, Residency Road' class='redio' />June 3, 2012 <span>(Sun 12noon - 5pm)</span></p><p class='sub'>Taj Gateway Hotel, Residency Road</p><p class='option'><input type='radio' name='preferred_location' value='June 4, 2012, Mon 11am - 1pm S&B Towers, MG Road' class='redio' />June 4, 2012 <span>(Mon 11am - 1pm)</span></p><p class='sub'>S&B Towers, MG Road</p>"); 
           break; 
          case 'Chandigarh': 
           $("#address").html("<h2>Select date of info session:</h2><p><input type='radio' name='preferred_location' value='May 26, 2012, Sat 10:30am - 5:30pm The Park Hote, Anna Salai' class='redio' /> May 26, 2012 <span>(Sat 10:30am - 5:30pm)</span></p><p class='sub'>The Park Hote, Anna Salai</p><p class='option'><input type='radio' name='preferred_location' value='May 28, 2012, Mon 1pm - 3pm No. 16, Nungambakkam' class='redio' />May 28, 2012<span>(Mon 1pm - 3pm)</span></p><p class='sub'>No. 16, Nungambakkam</p><p class='option'><input type='radio' name='preferred_location' value='May 28, 2012, Mon 10am - 12noon Sindur Shopping Centre, Anna Nagar' class='redio' /> May 28, 2012 <span>(Mon 10am - 12noon)</span></p><p class='sub'>Sindur Shopping Centre, Anna Nagar</p>"); 
           break; 
         } 

         //$("#address").find(':radio:first').prop('checked', true); 
        } 
       }); 

       $("#graduate").trigger('change'); 

       $("#address").find(':radio').live('click', function (e) { 
        $('#cbTest').prop('checked', $("#address").find(':radio:checked').length > 0); 
       }); 
      });​ 
+0

爲每個單選按鈕添加class =「CommonCityRadio」並檢查此代碼。你可以添加你的HTML和jQuery在http://jsfiddle.net/ – Thulasiram

+0

謝謝你的回覆ThulasiRam。我已根據我的要求進行了更改,但它並不適用於我的結尾。請檢查以下更新的代碼$(document).ready(function(){(#address input [name * ='preferred_location']「)。點擊(function(){(「#address input [type ='radio']」)。prop('checked',$(this).prop('checked')); $('#note') .removeClass(「inactive」)。addClass(「active」); }); }); – Jeet

+0

您好TulasiRam請查看我的代碼鏈接http://jsfiddle.net/9J6qR/2/在單選按鈕複選框應該檢查。任何想法我怎麼能得到我想要的結果 – Jeet

0

試試這個

$(document).ready(function(){ 
    $("#address input[name*='radio']").on('click',function() { 
     $('#note').removeClass("inactive").addClass("active"); 
    }); 
}); 
+0

Priyank嘗試了你提供的代碼,但不適合我。真的想知道爲什麼這個小小的想法不起作用。順便說一句,謝謝你的回覆。 – Jeet