我想在不使用 id 的情况下向 reporturl.php 提交表单。
<script >
$(document).ready(function() {
$("#submit").click(function() {
var name = $("#name").val();
$.post("reporturl.php", {
url1: name,
}, function(data) {
alert(data);
$('#form')[0].reset(); // To reset form fields
});
});
});
</script>
只有第一个提交,休息没有。帮助我找到一种方法,以便所有这些都可以通过 $(this)在 Jquery 代码中提交各自的点击,但我是Jquery和Don&#39的新手; t知道如何实现它
<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>
答案 0 :(得分:1)
您需要做一些更改:
将所有输入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>
...
相应地更新您的脚本
$(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
});
});
});
答案 1 :(得分:0)
如果您希望在不更改HTML的情况下实现,则可以按照以下代码段进行操作。
但在dom中重复使用id并不是一种好的做法。
ON DELETE NO ACT
$(document).ready(function() {
$("input[type='button']").click(function() {
var name = $(this).prev('input[type="hidden"]').val();
alert(name);
$.post("reporturl.php", {
url1: name,
}, function(data) {
alert(data);
});
});
});