ajax php无刷新获取/发布

ajax php无刷新获取/发布,php,jquery,ajax,post,get,Php,Jquery,Ajax,Post,Get,我需要执行以下代码,而不刷新页面。。。这段代码已经包含了ajax,但是在不刷新页面的情况下让它执行会有什么问题呢。。。。?.vote类附加到index.php文件中的一个锚点,如果可能的话,我需要在单击锚点时仍能使用这些。将其重新编码以在单击按钮时执行并不理想 $(".vote").click(function() { var id = $(this).attr("id"); var name = $(this).attr("name"); var eData = $(t

我需要执行以下代码,而不刷新页面。。。这段代码已经包含了ajax,但是在不刷新页面的情况下让它执行会有什么问题呢。。。。?.vote类附加到index.php文件中的一个锚点,如果可能的话,我需要在单击锚点时仍能使用这些。将其重新编码以在单击按钮时执行并不理想

$(".vote").click(function() {
    var id = $(this).attr("id");
    var name = $(this).attr("name");
    var eData = $(this).attr("data-options");
    var dataString = 'id='+ id + '&' + eData ;
    var parent = $(this);

    if(name=='up')
    {
       $(this).fadeIn(200).html('');
       $.ajax({
          type: "POST",
          url: "up.php",
          data: dataString,
          cache: false,
          success: function(html){
             parent.html(html);
          }
       });
    }
    else
    {
       $(this).fadeIn(200).html('');
       $.ajax({
          type: "POST",
          url: "down.php",
          data: dataString,
          cache: false,
          success: function(html){
             parent.html(html);
          }
       });
    }
});
下面是my index.php中的html

<div id="main">
<div id="left">
<span class='up'><a href="" class="vote" name="up" data-options="key1=<?php echo $mes_id1;?>&key2=<?php echo $mes_id2;?>"><img src="up.png" alt="Down" /></a></span><br />
<?php echo $totalvotes1; ?><br />
</div>
<div id="message">
    <?php echo $message1; ?>
</div>
<div class="clearfix"></div>
 </div>
<div id="main">
<div id="right">
<br />
<?php echo $totalvotes2; ?><br />
<span class='down'><a href="" class="vote" name="down" data-options="key1=<?php echo $mes_id1;?>&key2=<?php echo $mes_id2;?>"><img src="down.png" alt="Down" /></a></span>
</div>
<div id="message">
    <?php echo $message2; ?>
</div>
<div class="clearfix"></div>
</div>






您需要使用
$(document).ready(function(){})来封装代码,或将代码粘贴在
标记的末尾。就个人而言,我没有在加载DOM之前(在
部分)让浏览器解析同步javascript,而是将它放在末尾附近。这也是Bootstrap的建议

如果没有加载DOM,就没有为jQuery创建的用于注册事件的元素,因此您的代码在被解析后实际上什么都不做

除此之外,
.click()
函数在单击时执行。它绑定到什么元素并不重要。如果它是可点击的,它就是可执行的

为了正确回答您的问题:
将刷新页面。您想使用
。但是,这会使您跳到页面顶部。您还可以定义
并使用
#labelname
来避免这种情况。或者干脆不使用
href
。不需要


另外,将变量回显到HTML中的一个小技巧是使用

,所以基本上你们都说有一个简单的答案,我需要比我已有的更深入地研究它…?通过点击按钮来重新编码它涉及到更改类和添加按钮标记。另外,如果你不想刷新页面,那么不要将锚链接到任何东西……锚没有链接到任何东西。我不希望它是一个按钮,嗯,你可以设计一个标签,让它在足够的时间内表现得像一张桌子,所以这并不重要。另外,您是否确保文档事先准备好了?不,没有$(document).准备好(function()..这是必要的吗…?谢谢大家。这对于刷新我对javascript基础知识的记忆非常有帮助,我显然需要这些知识。我现在已经包括了$(document).准备好(function())但是在让这个脚本在不重新加载页面的情况下运行方面,我仍然需要帮助…我刚刚在上面发布了它,抱歉,谢谢你…太多了。#停止刷新我不知道我是怎么忘记的。靠近这里…所以现在页面不会重新加载,php在单击时执行,但是结果不会显示,除非我手动请刷新页面。我现在要自己去研究一下……除非这里有人知道如何在不刷新的情况下快速显示结果manually@PatrickLawler很高兴知道你已经开始工作了(除了ajax之外)。记住:在stackoverflow上,我们喜欢简洁的代码片段,但我们也喜欢完整的代码片段。