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
Javascript 获取页面中所有表单的输入_Javascript_Jquery_Html - Fatal编程技术网

Javascript 获取页面中所有表单的输入

Javascript 获取页面中所有表单的输入,javascript,jquery,html,Javascript,Jquery,Html,我想在我的页面中输入每个表单的名称,它们的名称是name,我的表单是这样的 <form class="form" role="form" onsubmit="completeSave(this)"> <div class="form-body"> <div class="form-group"> <label>name</label> <

我想在我的页面中输入每个表单的名称,它们的名称是name,我的表单是这样的

<form class="form" role="form" onsubmit="completeSave(this)">
      <div class="form-body">
           <div class="form-group">
               <label>name</label>
               <input type="text" class="form-control" name="name"
                                               value="{{$media->name}}">
            </div>
       </div>
 </form>
// next form!
 <form class="form" role="form" onsubmit="completeSave(this)">
      <div class="form-body">
           <div class="form-group">
               <label>name</label>
               <input type="text" class="form-control" name="name"
                                               value="{{$media->name}}">
            </div>
       </div>
 </form>
但它不起作用我怎么做?

试试序列化数组

试试这个:

函数completeSaveAll{ 调试器 //变量形式=$‘形式’; $'form'。每个函数{ console.log$this.find[name=name].val; } } 名称 //下一张表格! 名称 提交以前回答的类似问题以外的

我想说,您的onclick处理程序可能无法成功初始化,因为您正在handlerFunction completeSaveAll中使用jQuery$,并且在获取jQuery之前可能会呈现DOM元素。

HTML:

然后使用这些表单之外的按钮触发上面的操作

$('button').click(()=> 
    $('form').trigger('submit')
)
将这些值替换为{{$media->name}}或您想执行的任何操作

很简单:

'use strict';
var name = $('input[name="name"]');
$.each(name , function(i,el){
  console.log(i);
});
给你


尝试console.log$this.find[name=name];如果我理解正确,此问题与此主题相关。find是一个jQuery方法,只能链接到jQuery对象,即$this而不是this。如果有任何错误,请发表评论,以便我可以更新。
$.ajax({
type : 'POST',
url : 'url',
data : $('#form').serializeArray()
});
<form class="form" role="form">
      <div class="form-body">
           <div class="form-group">
               <label>name</label>
               <input type="text" class="form-control" name="name" value="name1">
            </div>
       </div>
 </form>
// next form!
 <form class="form" role="form">
      <div class="form-body">
           <div class="form-group">
               <label>name</label>
               <input type="text" class="form-control" name="name" value="name2">
            </div>
       </div>
 </form>
 <button class="btn btn-primary">submit</button>
$('form').on('submit', function(e) {
  e.preventDefault();
  var form = $(this);
  form.each((key, val)=>
    console.log(val.name.value))
})
$('button').click(()=> 
    $('form').trigger('submit')
)
'use strict';
var name = $('input[name="name"]');
$.each(name , function(i,el){
  console.log(i);
});