Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.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
Javascript 正在尝试查找选定的单选按钮。什么';怎么了?_Javascript_Jquery_Ajax - Fatal编程技术网

Javascript 正在尝试查找选定的单选按钮。什么';怎么了?

Javascript 正在尝试查找选定的单选按钮。什么';怎么了?,javascript,jquery,ajax,Javascript,Jquery,Ajax,我可以读取文本字段值,但当我尝试查找所选单选按钮时,什么也得不到 $(document).ready(function(){ $("form#create_form").submit(function() { var title = $('#title').attr('value'); var owner = $('#owner').attr('value'); var users = $('#users').attr('valu

我可以读取文本字段值,但当我尝试查找所选单选按钮时,什么也得不到

$(document).ready(function(){

    $("form#create_form").submit(function() {

    var title      = $('#title').attr('value');
    var owner      = $('#owner').attr('value');
    var users      = $('#users').attr('value');
    var groups     = $('#groups').attr('value');
    var begin_date = $('#begin_date').attr('value');
    var end_date   = $('#end_date').attr('value');

    // get selected radio button 
    var type = '';
    for (i=0; i<document.forms[0].type.length; i++) {
        if (document.forms[0].type[i].checked) {
        type = document.forms[0].type[i].value;
        }
    }
$(文档).ready(函数(){
$(“表单#创建表单”).submit(函数(){
变量title=$('#title').attr('value');
var owner=$('#owner').attr('value');
var users=$('#users').attr('value');
变量组=$(“#组”).attr('value');
var begin_date=$('begin_date').attr('value');
var end_date=$('#end_date').attr('value');
//“获取选定项”单选按钮
变量类型=“”;

对于(i=0;i我建议使用另一种方法来获取所选单选按钮(因为您已经在使用jQuery):

这个解决方案就是一个例子

上述解决方案更加简洁,如果添加其他表单,您可以避免将来发生任何冲突(即,您可以避免潜在危险的
文档。表单[0]

更新

我使用以下小提琴测试了您的原始功能,它可以正常工作:


我所做的唯一更改是在循环变量
I

前面添加一个
var
,我无法让它工作。我需要在HTML中做任何更改吗?我希望
type
是“Individual”或“course”,但当我这样做时,
alert(+type)
我得到了
NaN
。你为什么要在警报中添加
+
呢?你只需要做
警报(键入)
。好的一点=)现在你的解决方案也可以了!我不知道在应用了你的解决方案之后我做错了什么。谢谢=)您不应该有两个同时命名为type的字段。当您提交此数据时,后面的字段将覆盖前面的字段。如果有多个字段,则最后一个字段将是最终值。您也不应该重复id。id在页面上是唯一的。我建议将名称更改为它们的值,并且id的值相同。@Brombomb-
name
for单选按钮表示单选按钮属于哪个组。对于特定组中的每个单选按钮,它们应该相同。如果它们都有不同的名称,则按钮将相互排斥(您可以选择所有按钮)。更多信息:
<div class="create-new">
  <form id="create_form" name="create_form" action="" method="post">
  ...
  <input name="type" id="type" value="individuel" type="radio" /> Individuel <br/>
  <input name="type" id="type" value="course"     type="radio" /> Course <br/>

  <button class="n" type="submit">Create</button>
  </form>
$('input:radio[name=type]:checked').val();