我不明白为什么ajax不起作用。 我的代码:
<script type="text/javascript" src="js/jquery-1.9.1.js"></script>
<script type="text/javascript">
function edit_row(id)
{
$.ajax({
method:'get',
url:'form.php',
success:function(data)
{
$('#form_div').html(data);
}
});
}
<?php
echo '<td style='.$style.'>'.$status.'<a href="" title="Edit" onClick=edit_row('.$data['type_id'].')><img src="images/pencil.png" width="30px" height="30px"></a></td></tr>';
?>
它没有打开form.php onclick有什么问题请帮帮我!!!
答案 0 :(得分:1)
您点击该链接。 JavaScript运行。链接被遵循。加载新页面(具有相同的URL,因为您有href=""
)。 JavaScript停止了,因为它的环境消失了。
改为使用按钮。
答案 1 :(得分:0)
你必须把
href="javascript:void(0)"
而不是
href=""
否则它将重新加载页面而不调用ajax
答案 2 :(得分:0)
你没有通过&#39; id&#39;给你form.php我想你需要传递它:
<script type="text/javascript" src="js/jquery-1.9.1.js"></script>
<script type="text/javascript">
function edit_row(id)
{
$.ajax({
method:'get',
url:'form.php',
data: {id: id },
success:function(data)
{
$('#form_div').html(data);
}
});
}
</script>
答案 3 :(得分:0)
我会做这样的事情(不使用onClick
属性):
<script type="text/javascript" src="js/jquery-1.9.1.js"></script>
<script type="text/javascript">
$(function() {
$('a.edit').click(function(e) { // or: $.on('click', 'a.edit', function(e) {
e.preventDefault();
var id = $(this).attr('id');
$.ajax({
method:'get',
url: 'form.php',
data: {id:id},
success: function(data) {
$('#form_div').html(data);
}
});
});
</script>
<?php
echo '<td style="$style">$status
<a href="#" id="' . $data['type_id'] . '" title="Edit" class="edit">
<img src="images/pencil.png" width="30px" height="30px">
</a></td></tr>';
?>