简体   繁体   English

jQuery未在单选按钮上运行单击

[英]Jquery Not Running on radio Button Click

I want to show alert box when user select radio button i have written the jquery to do this . 当用户选择单选按钮时,我想显示警报框,我已编写了jquery来执行此操作。 here is my code 这是我的代码

    <script src="http://code.jquery.com/jquery-latest.min.js"
        type="text/javascript"></script>

    <script type="text/javascript">

$(document).ready(function() {
  $("#checkbox_div input:radio").click(function() {

    alert("clicked");

   });

  $("input:radio:first").prop("checked", true).trigger("click");

});
</script>
</head>
<ul>
<li><input type="radio"  name="theme" value="theme1"/>Theme1</li>
<li><input type="radio"  name="theme" value="theme2"/>Theme2</li>
<ul>
<li><input type="checkbox"  name="view1" />Tags</li>                        
</ul>
<li><input type="radio"  name="theme" value="theme3"/>Theme3</li>
<li><input type="radio"  name="theme" value="theme4"/>Theme4</li>
</ul>

I have written this code this code seems perfect for me but still jquery is not running Please help 我已经写了这段代码,这个代码对我来说似乎很完美,但是仍然没有运行jquery请帮助

Check this : http://jsfiddle.net/04nh2f71/ 检查一下: http : //jsfiddle.net/04nh2f71/

<script src="http://code.jquery.com/jquery-latest.min.js"
        type="text/javascript"></script>

    <script type="text/javascript">

$(document).ready(function() {
  $("input:radio").click(function() { // removed #checkbox_div 

    alert("clicked");

   });

  $("input:radio:first").prop("checked", true).trigger("click");

});
</script>
</head>
<ul>
<li><input type="radio"  name="theme" value="theme1"/>Theme1</li>
<li><input type="radio"  name="theme" value="theme2"/>Theme2</li>
<ul>
<li><input type="checkbox"  name="view1" />Tags</li>                        
</ul>
<li><input type="radio"  name="theme" value="theme3"/>Theme3</li>
<li><input type="radio"  name="theme" value="theme4"/>Theme4</li>
</ul>

Or you can try this 或者你可以尝试一下

<script src="http://code.jquery.com/jquery-latest.min.js"
        type="text/javascript"></script>

    <script type="text/javascript">

$(document).ready(function() {
  $("#checkbox_div input:radio").click(function() {

    alert("clicked");

   });

  $("input:radio:first").prop("checked", true).trigger("click");

});
</script>
</head>
<ul id="checkbox_div"><!-- add id="checkbox_div" -->
<li><input type="radio"  name="theme" value="theme1"/>Theme1</li>
<li><input type="radio"  name="theme" value="theme2"/>Theme2</li>
<ul>
<li><input type="checkbox"  name="view1" />Tags</li>                        
</ul>
<li><input type="radio"  name="theme" value="theme3"/>Theme3</li>
<li><input type="radio"  name="theme" value="theme4"/>Theme4</li>
</ul>

You need to remove the #checkbox_div from your jQuery selector 您需要从jQuery选择器中删除#checkbox_div

$(document).ready(function() {
  $("input:radio").click(function() { //No #checkbox_div
    alert("clicked");
   });
  $("input:radio:first").prop("checked", true).trigger("click");
});

This is because no element exists that has the id checkbox_div , and so you are trying to run your jQuery on click of a nonexistent element. 这是因为不存在ID为checkbox_div元素,因此您尝试单击不存在的元素来运行jQuery。

https://jsfiddle.net/jofish999/o7Lxc2ep/ https://jsfiddle.net/jofish999/o7Lxc2ep/


Or, if you must keep the specificity, add that id (checkbox_div) to your ul 或者,如果必须保持特异性,则将该ID(checkbox_div)添加到您的ul

<ul id="checkbox_div"> <!-- Here, add that id -->
    <li><input type="radio"  name="theme" value="theme1"/>Theme1</li>
    <li><input type="radio"  name="theme" value="theme2"/>Theme2</li>
        <ul>
            <li><input type="checkbox"  name="view1" />Tags</li>                        
        </ul>
    <li><input type="radio"  name="theme" value="theme3"/>Theme3</li>
    <li><input type="radio"  name="theme" value="theme4"/>Theme4</li>
</ul>

http://jsfiddle.net/jofish999/b0vszhuz/1/ http://jsfiddle.net/jofish999/b0vszhuz/1/

似乎您没有“ #checkbox_div”的值,请尝试向单选按钮添加ID。

<li><input type="radio"  id="checkbox_div" name="theme" value="theme1"/>Theme1</li>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM