Javascript 不使用id提交

Javascript 不使用id提交,javascript,php,jquery,html,Javascript,Php,Jquery,Html,我想将表单提交到reporturl.php,而不使用id。 $(文档).ready(函数(){ $(“#提交”)。单击(函数(){ var name=$(“#name”).val(); $.post(“reporturl.php”{ url1:名称, },函数(数据){ 警报(数据); $('#form')[0].reset();//重置表单字段的步骤 }); }); }); 只有第一个提交,其余的不提交。请帮助我找到一种方法,使所有内容都可以在各自的点击中提交,可以使用Jquery代码中

我想将表单提交到reporturl.php,而不使用id


$(文档).ready(函数(){
$(“#提交”)。单击(函数(){
var name=$(“#name”).val();
$.post(“reporturl.php”{
url1:名称,
},函数(数据){
警报(数据);
$('#form')[0].reset();//重置表单字段的步骤
});
});
});
只有第一个提交,其余的不提交。请帮助我找到一种方法,使所有内容都可以在各自的点击中提交,可以使用Jquery代码中的$(此),但我对Jquery不熟悉,不知道如何实现它

 <body>
<div>
<input id="name" value="first " type="hidden">
<input id="submit" type="button" value="Submit">
</div>
<div>
<input id="name" value="second " type="hidden">
<input id="submit" type="button" value="Submit">
</div>
<div>
<input id="name" value="third " type="hidden">
<input id="submit" type="button" value="Submit">
</div>
<div>
<input id="name" value="fourth" type="hidden">
<input id="submit" type="button" value="Submit">
</div>
<div>
<input id="name" value="fifth " type="hidden">
<input id="submit" type="button" value="Submit">
</div>
<div>
<input id="name" value="sixth " type="hidden">
<input id="submit" type="button" value="Submit">
</div>
<div>
<input id="name" value="seventh " type="hidden" >
<input id="submit" type="button" value="Submit">
</div>
</body>

您需要做一些更改:

  • 将所有输入
    id
    更改为
    class

    <div>
        <input class="name" value="first " type="hidden">
        <input class="submit" type="button" value="Submit">
    </div>
    <div>
        <input class="name" value="second " type="hidden">
        <input class="submit" type="button" value="Submit">
    </div>
    
    ...
    

  • 如果您想在不改变HTML的情况下实现,可以按照下面的代码片段来实现

    但是在dom中复制ID根本不是好的做法。
    $(文档).ready(函数(){
    $(“输入[type='button'])。单击(函数(){
    var name=$(this.prev('input[type=“hidden”]').val();
    警报(名称);
    $.post(“reporturl.php”{
    url1:名称,
    },函数(数据){
    警报(数据);
    });
    });
    });
    
    
    
    id
    必须是唯一的。你应该改用类。表单的数量和它有什么关系?我在html中没有看到任何表单。如果没有类,你必须依赖html结构来获取与按钮匹配的输入。我记得你说过你不能使用类。说它在下面起作用,与您在这里所说的相矛盾。@jeroen Right^^^^?您需要编辑您的问题和标题。这与你所接受的相矛盾。谢谢,它奏效了:)很高兴我帮了你!)
    <div>
        <input class="name" value="first " type="hidden">
        <input class="submit" type="button" value="Submit">
    </div>
    <div>
        <input class="name" value="second " type="hidden">
        <input class="submit" type="button" value="Submit">
    </div>
    
    ...
    
    $(document).ready(function() {
    
        $(".submit").click(function() {  // listen to class, not id
            var name = $(this).prev().val(); // take the value from preceding input
            $.post("reporturl.php", {
                url1: name,
            }, function(data) {
                alert(data);
                $('#form')[0].reset(); // To reset form fields
            });
    
        });
    
    });