使用Javascript:
<script>
$(document).ready(function(){//So far AJAX isn't asyncn.
$(".acceptorbutton").on('click', function(){
var whichClicked = this.attr('name');
var cat = parseInt(whichClicked, 10);
alert("this text is not appearing");
$.ajax({
type:"POST",
url:"getuser.php",
data: {friendadd : cat},
success: function(){
alert("Ajax success");
}
})
})
});
</script>
PHP和HTML表单:它为搜索结果出现的每个用户循环。每个用户旁边都有一个输入按钮,onClick应该调用getuser.php。输入按钮是相同的,除了它们的名称。在点击时,jQuery应该执行但它没有检测到它。
<form id="friendadd" enctype="multipart/form-data">
<?php
for($i=0; $i<$ctk->rowCount(); $i++){
echo "<img src='".$ctk_values[$i][6]."' alt='Blank' style='width:64px;height:64px'>";//PP, Later add clickable profile
echo "<th rowspan='3'>Attributes</th>";
echo "<tr> ".$ctk_values[$i][0]."</tr>";//UN
echo "<tr> ".$ctk_values[$i][1]."</tr>";//UL
echo "<tr> ".$ctk_values[$i][5]."</tr>";//UA
echo "YOYOYOO".$ctk_values[$i][4];
$GlobalAcceptorId=$ctk_values[$i][4];
?>
<div id="dom-target" style="background-color:yellow;">
<?php
echo $GlobalAcceptorId;
?>
</div>
<input class="acceptorbutton" type="button" name="<?php echo $ctk_values[$i][4];?>"><br>
<?php
}//Ends for loop
?>
</form>
<?php
}
}
?>
到目前为止我尝试了什么:警报框没有出现。我已尝试更改表单按钮类型以提交并制作Javascript $(".acceptorbutton").submit(function(){....
提前致谢!如果您需要更多信息,请告诉我,但到目前为止,我认为我没有遗漏任何关键数据。
答案 0 :(得分:0)
所以我发现错误并最终让它发挥作用!希望与此斗争的其他人会觉得这很有帮助。我的错误是this.attr('name');在jQuery 1.7中被弃用,而我正在使用jQuery 2.1。错误不在于回调,而是完全像关闭并在看到它时火上浇油,甚至不允许alert()通过。相反,使用$(this).prop('name')。感谢所有帮助过的人!
<script>
$(document).ready(function(){//So far AJAX isn't asyncn.
$(".acceptorbutton").on("click", function(){
alert("this text is not appearing");
//var whichClicked = this.attr('name');
//var cat = parseInt(whichClicked, 10);
var cat = parseInt($(this).prop('name'), 10);
$.ajax({
type:"POST",
url:"getuser.php",
data: {friendadd : cat},
success: function(){
alert("Ajax success");
}
});//Add data: and success:function
})
});
</script>