这个jQuery代码是对的吗?

时间:2013-09-14 06:13:49

标签: javascript jquery ajax input

function like(){
    $('#likeo').html('<div style = "align:center"><img src = "images/loader.gif"></div></br>').show();
    var pid = <?php echo $post; ?>;
    $.post('include/like.php',{pids:pid} , function(data){
        $('#likeo').html(data).show();
    })
}

这个jquery代码是对的吗?我尝试了一切,但没能让它发挥作用。此函数由以下代码执行:

<input type='button'
 value='Like'
 name='like'
 id='inputl'
 class='buttonl'
 style='width: 46.4%; margin-top: 10px;'
 onclick = 'javascript:like();'>

这是一个类似于Ajax的帖子系统。变量$ post是要被喜欢的帖子ID。基本上,它应该做的是:

  • 首先在工作中显示装载程序
  • 获取POST ID以发送给PHP代码
  • 使用jquery,将帖子ID发送到带有变量pid的like.php。完成任务后,显示php的回复而不是加载程序。

谢谢你们,最后让它发挥作用

2 个答案:

答案 0 :(得分:0)

不,这是错误的,因为函数like在原始代码中不接受任何参数,即使你在函数调用中传递了一个参数。

function like(id){
    $('#likeo').html('<div style = "align:center"><img src = "images/loader.gif"></div></br>').show();
    var pid = id;
    $.post(
        'include/like.php',
        {pids: pid},
        function(data){
            $('#likeo').html(data).show();
        }
    )
}



<input
   type = 'button'
   value = 'Like'
   name = 'like'
   id = 'inputl'
   class = 'buttonl'
   style = 'width:46.4%;margin-top:10px;'
   onclick = 'like(<?php echo $post; ?>);'
>

答案 1 :(得分:0)

使like函数接收一个参数并通过echo $ post停止传递它。

function like(pid){
    $('#likeo').html('<div style = "align:center"><img src = "images/loader.gif"></div></br>').show();
    $.post('include/like.php',{pids:pid} , function(data){
        $('#likeo').html(data).show();
    })
}

你的onclick应该是这样的:

onclick="like(<?php echo $post; ?>);"