Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
onclick of r单选按钮jquery_Jquery - Fatal编程技术网

onclick of r单选按钮jquery

onclick of r单选按钮jquery,jquery,Jquery,我有一个包含html和js函数的jsp文件。现在我试图避免在jsp中编写js。因此,我创建了一个单独的js文件,并将脚本从jsp移动到js文件。除了下面的代码外,其他一切都正常工作 现行守则 <input class="required" type="radio" name="radio" id="radio_yes" onclick="showDetails();"/> <%if(isOwner.equalsIgnoreCase("true")){%> <

我有一个包含html和js函数的jsp文件。现在我试图避免在jsp中编写js。因此,我创建了一个单独的js文件,并将脚本从jsp移动到js文件。除了下面的代码外,其他一切都正常工作

现行守则

<input class="required" type="radio" name="radio" id="radio_yes"  onclick="showDetails();"/>

 <%if(isOwner.equalsIgnoreCase("true")){%>
  <script>
   var a = document.getElementById("radio_yes");
   var evnt = a["onclick"];
   if (typeof(evnt) == "function") {
       evnt.call(a);
   }
 </script>
<%}

<script>
   function showDetails(){//Code 
  }
</script>
但是当我像这样分开时,我不知道如何在js文件中为单选按钮编写下面的脚本。这是一个现有的代码,我不知道为什么我们必须为这样的单选按钮编写onclick

<script>
   var a = document.getElementById("radio_yes");
   var evnt = a["onclick"];
   if (typeof(evnt) == "function") {
       evnt.call(a);
   }
</script>

var a=document.getElementById(“radio_yes”);
var evnt=a[“onclick”];
if(类型(evnt)=“功能”){
evnt.call(a);
}
功能是,当用户单击收音机时,会显示一些当前隐藏的文本字段。用户填写详细信息并转到下一页。当用户再次返回此页面时,如果单击单选按钮,则应显示包含用户输入数据的所有文本字段。现在我的问题是,单选按钮显示为选中,但当我返回此页面时,下面的文本字段不显示。 当用户返回时,似乎不会触发单击。因为一旦我回来,文本字段就不会显示。如果我再次单击“是”单选按钮,将显示字段


有人能帮我吗?

你能为此做些什么:

查看您是否重定向到其他页面,当您再次返回此页面时,如果您的
收音机
被选中,则您必须执行一些
if(){}
检查,查看该元素是否被选中,并触发
单击
事件

$(function(){ //<---------this is document ready
   if($('#radio_yes:checked').length > 0){
       $('#radio_yes').click(showDetails).click(); //<----trigger it on load
   }
   $('#radio_yes').click(showDetails);
});

function showDetails(){// <--move this in global scope
}
$(函数(){//0){

$(“#radio_yes”)。单击(showDetails)。单击();//我认为您需要像
$(“#radio_yes”)一样使用
trigger
触发器。trigger('click')
@Satpal。。感谢您的回复。因此我应该从jsp中删除avove代码,并在js文件中以$(“#radio_yes”)的形式写入。trigger('click'))是的,你可能需要做些什么。你应该在
doc ready
@Satpal.中移动你的
点击事件。我尝试了触发方法..但不起作用。@Jai.谢谢你的回复。这有什么作用?$(“#radio_Yes”)。点击(showDetails)。点击();此外,我无法在加载页面时执行此操作,因为此单选按钮不会始终选中。只有选中此选项,它才会显示以下字段。我有更新dmy问题。你能检查一下吗确定。我已更新了qn。请告诉我你是否需要对此进行任何澄清。它检查一个条件,如果为真,则必须执行收音机上的点击事件。@user1049057查看更新可能会有帮助。@Jai..我需要在jsp中检查此条件并执行脚本..这怎么可能?@Jai..是的,我们必须使用if()进行操作我们在jsp中使用的类似于…的条件,那么是否可以检查jsp中的条件,然后调用js文件中的函数>
<script>
   var a = document.getElementById("radio_yes");
   var evnt = a["onclick"];
   if (typeof(evnt) == "function") {
       evnt.call(a);
   }
</script>
$(function(){ //<---------this is document ready
   if($('#radio_yes:checked').length > 0){
       $('#radio_yes').click(showDetails).click(); //<----trigger it on load
   }
   $('#radio_yes').click(showDetails);
});

function showDetails(){// <--move this in global scope
}
<%if(isOwner.equalsIgnoreCase("true")){%>
 <script>
   $(function(){ //<---------this is document ready
     if($('#radio_yes:checked').length > 0){
        $('#radio_yes').click(showDetails).click(); //<----trigger it on load
     }
     $('#radio_yes').click(showDetails);
   });
 </script>
<%}%>