【问题标题】:Is this jQuery code right?这个 jQuery 代码对吗?
【发布时间】:2013-09-14 06:13:49
【问题描述】:
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 而不是 loader 的回复。

谢谢大家,终于搞定了

【问题讨论】:

  • 考虑到它的格式有多糟糕,而且你还没有告诉我们代码应该做什么,这是一个非常难以回答的问题。
  • 不,看起来不太对...
  • 好吧,我会写它的用途..
  • onclick 代码将参数传递给函数,但函数不接受任何参数。这似乎不对。
  • 顺便说一句,onXXX 属性中不需要javascript:

标签: javascript jquery ajax input


【解决方案1】:

不,这是错误的,因为函数 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; ?>);'
>

【讨论】:

  • 我试过了,还是不行。这让我很害怕。我有另一个用于评论的代码,如果这个类似函数,它基本上是一个编辑。那行得通,我可以在页面上发表评论,但不能点赞。我向上帝发誓,这是相同的代码:
  • 哪个部分不工作?函数是否执行? console.logid在like函数内
  • 不,不是分号。
  • 在你的函数中尝试 console.log()。查看您是否在 post 请求的成功回调中获得了正确的 iddata
  • 不,该函数不执行。我不明白。什么console.log..我是初学者,我不知道如何使用console.log,我讨厌我的生活。
【解决方案2】:

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

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; ?>);"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-09-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-26
    • 2013-03-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多