jqueryajax脚本无法使用PHP中的n个表单
我的AJAX jQuery脚本和n个表单有点问题……更准确地说,PHP脚本生成n个表单(表单包括一个文本区域和一个按钮),在head标记中我包含了jQuery脚本。问题是jquery只适用于第一种形式,而不适用于其他形式(第二种、第三种…)。我需要处理所有表单…以下是代码:jqueryajax脚本无法使用PHP中的n个表单,php,javascript,jquery,html,ajax,Php,Javascript,Jquery,Html,Ajax,我的AJAX jQuery脚本和n个表单有点问题……更准确地说,PHP脚本生成n个表单(表单包括一个文本区域和一个按钮),在head标记中我包含了jQuery脚本。问题是jquery只适用于第一种形式,而不适用于其他形式(第二种、第三种…)。我需要处理所有表单…以下是代码: <script> $(document).ready(function() { $("#submitForm").click(function() { var text = $("
<script>
$(document).ready(function() {
$("#submitForm").click(function() {
var text = $("#comment").val();
var id = $("#id").val();
$.ajax(
{
url: "addcomment.php",
type: "POST",
data: "t="+ text +"&id="+id,
success: function(data)
{
alert(data);
}
});
});
});
</script>
$(文档).ready(函数(){
$(“#提交表单”)。单击(函数(){
var text=$(“#注释”).val();
var id=$(“#id”).val();
$.ajax(
{
url:“addcomment.php”,
类型:“POST”,
数据:“t=“+text+”&id=“+id,
成功:功能(数据)
{
警报(数据);
}
});
});
});
这是PHP代码
for($i=0; $i<$num; $i++)
{
echo "<div style='border: 1px solid black;'>
<textarea id='comment'></textarea>
<input type='hidden' id='id' value='".$id."'/>
<input type='button' id='submitForm' value='Add Comment'>
</div>";
}
for($i=0;$i对于您创建的每个表单,您都使用相同的ID
ID必须是唯一的,并且在页面上只显示一次
您应该使用注释中建议的类
更像这样:
<?php for ($i = 0; $i < $num; $i++): ?>
<div>
<textarea class="comment"></textarea>
<input type="hidden" class="id" value="<?php echo $id; ?>">
<input type="button" class="submitForm" value="Add Comment">
</div>
<?php endfor; ?>
在PHP方面,您应该使用类似的方法进行更改,以确保所有html元素都具有唯一的id
for($i=0; $i<$num; $i++)
{
echo "<div style='border: 1px solid black;'>
<textarea id='comment".$i."'></textarea>
<input type='hidden' id='id".$i."' value='".$id."'/>
<input type='button' id='".$i."' class='submitForm' value='Add Comment'>
</div>";
}
用于($i=0;$IID必须是唯一的,使用classes.Hm…当我使用classes并在jquery中更改时#comment with.comment,我不会从textarea获取值。使用id输入,一切都很好…你需要更改获取值的方式并收听提交。你能告诉我怎么做,或者给我一些文档的链接吗?
for($i=0; $i<$num; $i++)
{
echo "<div style='border: 1px solid black;'>
<textarea id='comment".$i."'></textarea>
<input type='hidden' id='id".$i."' value='".$id."'/>
<input type='button' id='".$i."' class='submitForm' value='Add Comment'>
</div>";
}
<script>
$(document).ready(function() {
$(".submitForm").click(function() {
var formNumber = $(this).attr("id"); // Get the form number that was clicked, the id attribute of the clicked button
var text = $("#comment"+formNumber).val(); // Get the comment of that particular form
var id = $("#id"+formNumber).val(); // get the id of that particula form
$.ajax(
{
url: "addcomment.php",
type: "POST",
data: "t="+ text +"&id="+id,
success: function(data)
{
alert(data);
}
});
});
});
</script>