Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/440.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.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_Ruby On Rails - Fatal编程技术网

Javascript 使用单个提交按钮呈现多个表单,但仅提交第一个实例的表单变量

Javascript 使用单个提交按钮呈现多个表单,但仅提交第一个实例的表单变量,javascript,jquery,ruby-on-rails,Javascript,Jquery,Ruby On Rails,除了标题,我不知道还有什么要说。在rails视图中,im循环通过一个div来呈现多个员工配置文件,并使用编辑按钮将配置文件切换到并编辑表单,从显示的内容填充输入字段值。但单击“保存”(仅呈现第一个实例)时,这些表单字段将作为参数发送。当我在其他配置文件上单击“保存”时,不会发生任何事情。即使字段和表单是为所有员工呈现的 <div class="container team-inner"> <%cleaners.each do |cleaner| %>

除了标题,我不知道还有什么要说。在rails视图中,im循环通过一个div来呈现多个员工配置文件,并使用编辑按钮将配置文件切换到并编辑表单,从显示的内容填充输入字段值。但单击“保存”(仅呈现第一个实例)时,这些表单字段将作为参数发送。当我在其他配置文件上单击“保存”时,不会发生任何事情。即使字段和表单是为所有员工呈现的

<div class="container team-inner">
        <%cleaners.each do |cleaner| %>
            <div id="employee-div" class="row">
                <div class="col-md-12 team-container">
                    <div class="row">
                        <div class="col-md-3 ">
                            <div class="img-container">
                                <%= image_tag('asset_emp2.png', class: '') %>
                            </div>
                        </div>
                        <div class="col-md-6 team-details">
                            <div class="toggle-field">
                                <div class="row grid">
                                    <div class="col-md-6 left-grid">
                                        <p>First Name:</p>
                                    </div>
                                    <div class="col-md-6 right-grid">
                                        <p><%=cleaner["first_name"]%></p>
                                        <input type="hidden" id="emp-id" value=<%=cleaner["id"]%>>
                                    </div>
                                </div>
                                <div class="row grid">
                                    <div class="col-md-6 left-grid">
                                        <p>Last Name:</p>
                                    </div>
                                    <div class="col-md-6 right-grid">
                                        <p><%=cleaner["last_name"]%></p>
                                    </div>
                                </div>
                                <div class="row grid">
                                    <div class="col-md-6 left-grid">
                                        <p>Employee ID:</p>
                                    </div>
                                    <div class="col-md-6 right-grid">
                                        <p><%=cleaner["employee_id"]%></p>
                                    </div>
                                </div>
                                <div class="row grid">
                                    <div class="col-md-6 left-grid">
                                        <p>Date of Join:</p>
                                    </div>
                                    <div class="col-md-6 right-grid">
                                        <p><%=cleaner["date_of_join"]%></p>
                                    </div>
                                </div>
                                <div class="row grid">
                                    <div class="col-md-6 left-grid">
                                        <p>E-mail ID: </p>
                                    </div>
                                    <div class="col-md-6 right-grid">
                                        <p><%=cleaner["email"]%></p>
                                    </div>
                                </div>
                                <div class="row grid">
                                    <div class="col-md-6 left-grid">
                                        <p>Phone Number:</p>
                                    </div>
                                    <div class="col-md-6 right-grid">
                                        <p><%=cleaner["phone_number"]%></p>
                                    </div>
                                </div>
                                <!-- <div class="row grid">
                                    <div class="col-md-6 left-grid">
                                        <p>Number of jobs done:</p>
                                    </div>
                                    <div class="col-md-6 right-grid">
                                        <p></p>
                                    </div>
                                </div> -->
                            </div>
                            <form name="empEditForm"  class="toggle-field" style="display: none;" >

                                <div class="form-group">
                                    <label class="col-md-6">First Name:</label>
                                    <div class="col-md-6">
                                        <input type="text" name="emp-edit-first-name" id="emp-edit-first-name" 
                                        class="form-control" value=<%=cleaner["first_name"]%>>
                                        <input type="hidden" id="emp-id" value=<%=cleaner["id"]%>>
                                    </div>
                                </div>

                                <div class="form-group">
                                    <label class="col-md-6">Last Name:</label>
                                    <div class="col-md-6">
                                        <input type="text" name="emp-edit-last-name" id="emp-edit-last-name" class="form-control" value=<%=cleaner["last_name"]%>>
                                    </div>
                                </div>
                                <div class="form-group">
                                    <label class="col-md-6">Employee ID:</label>
                                    <div class="col-md-6">
                                        <input type="text" name="emp-edit-employee-id" id="emp-edit-employee-id" class="form-control" value=<%=cleaner["employee_id"]%>>
                                    </div>
                                </div>
                                <div class="form-group">
                                    <label class="col-md-6">Date of Join:</label>
                                    <div class="col-md-6">
                                        <input type="text" name="emp-edit-date-of-join" id="emp-edit-date-of-join" class="form-control" value=<%=cleaner["date_of_join"]%>>
                                    </div>
                                </div>
                                <div class="form-group">
                                    <label class="col-md-6">Email ID: </label>
                                    <div class="col-md-6">
                                        <input type="text" name="emp-edit-email" id="emp-edit-first_name" class="form-control" value=<%=cleaner["email"]%>>
                                    </div>
                                </div>
                                <div class="form-group">
                                    <label class="col-md-6">Phone Number: </label>
                                    <div class="col-md-6">
                                        <input type="text"  name="emp-edit-phone-number" id="emp-edit-phone-number" class="form-control" value=<%=cleaner["phone_number"]%>>
                                    </div>
                                </div>

                           <!-- <div class="form-group">
                                    <label class="col-md-6">Number of jobs done:</label>
                                    <div class="col-md-6">
                                        <input type="text" class="form-control" value="43">
                                    </div>
                                </div> -->


                            </form>
                       <!-- <div class="row grid">
                                <div class="col-md-6 left-grid">
                                    <p>Rating:</p>
                                </div>
                                <div class="col-md-6 right-grid">
                                    <p>Rating: <span>4.8</span></p>
                                    <p class="rating"><i class="glyphicon glyphicon-star rate"></i><i class="glyphicon glyphicon-star rate"></i><i class="glyphicon glyphicon-star rate"></i><i class="glyphicon glyphicon-star rate"></i><i class="glyphicon glyphicon-star"></i></p>
                                </div>
                            </div> -->
                        </div>
                        <div class="col-md-3 edit-link">
                            <a href="#" class="btn save toggle-field toggle-btn">Edit</a>
                            <a href="#" id="save-btn" style="display:none;" class="btn save toggle-field" >Save</a>
                            <a href="#" style="display:none;" class="btn cancel toggle-field toggle-btn">CANCEL</a>
                        </div>
                    </div>
                </div>
            </div>
        <%end%>
更新:修复了将表单的
name
字段设置为循环中的清洁器id本身的问题

<form  class="toggle-field" style="display: none;" name=<%=cleaner['id']%> >
。 .


希望它能帮助别人。谢谢您的帮助。

请检查下面提到的解决方案。我希望这对你有帮助

$("#save-btn").click(function(e){
    e.preventDefault();
    console.log($('form').serialize());
});

for的名称重复,因为您正在使用循环。此处的表单名称应唯一,表单名称为
empEditForm
。您可以使用唯一的编号创建唯一的名称,然后单击“提交”按钮获取表单名称并使用它获取values@PankajMakwana我想这也是问题所在。您可以将我链接到任何来源吗?更改表单中的名称:
并在提交按钮上使用类,在类名上使用单击事件,按钮应位于
标记内
<a href="#" style="display:none;" class="btn save toggle-field" onclick="return contractorEditEmployee('<%=cleaner['id']%>');" >SAVE</a>
 function contractorEditEmployee(cleaner_id){
    var first_name = document.forms[cleaner_id]["emp-edit-first-name"].value;
    var last_name = document.forms[cleaner_id]["emp-edit-last-name"].value;
$("#save-btn").click(function(e){
    e.preventDefault();
    console.log($('form').serialize());
});