Javascript什么时候显示结果

时间:2010-03-24 23:50:04

标签: javascript ajax jquery

这是我的Javascript,我想在加载时显示记录,并在添加到数据库时显示新记录

showrecords();显示数据库中的记录,我可以将其放在我的代码中,以便它能正常工作。

$(document).ready(function()
{
    //showrecords()

    function showrecords()
    {
        $.ajax({
            type: "POST",
            url: "demo_show.php",
            cache: false,
            success: function(html){

                $("#display").after(html);

                document.getElementById('content').value='';
                $("#flash").hide();

             }

        });
    }

    $(".comment_button").click(function() {

        var element = $(this);
        var test = $("#content").val();
        var dataString = 'content='+ test;

        if(test=='')
        {
            alert("Please Enter Some Text");

        }
        else
        {
            $("#flash").show();
            $("#flash").fadeIn(400)
                .html('<img src="http://tiggin.com/ajax-loader.gif" align="absmiddle">&nbsp;<span class="loading">Loading Comment...</span>');


            $.ajax({
                type: "POST",
                url: "demo_insert.php",
                data: dataString,
                cache: false,
                success: function(html){


                    // $("#display").after(html);
                    document.getElementById('content').value='';
                    $("#flash").hide();

                    //Function for showing records
                    //showrecords();

                 }
            });
        }

    return false;
    });
});

2 个答案:

答案 0 :(得分:0)

虽然不建议污染全局命名空间。以下是我建议您使用的代码。将showRecords()移出Document ready函数并将更新ajax代码重构为另一个函数'updateRecords()'。只有文档就绪函数内的事件绑定。

您可以将整个注释作为对“demo'insert.php”服务的响应返回,并在更新服务成功回调中调用“showRecords()”。

答案 1 :(得分:0)

我已粘贴下面(未经测试的)代码,我认为应该完成工作。为了调用函数,你必须在可访问的区域中定义它们,无论是在“全局”(可以从任何地方调用)命名空间,如下所述,还是作为另一个对象的一部分。

在尝试调用函数之前,还需要确保定义函数,因为所有函数都是自顶向下的。

function showrecords() {
  $.ajax({
    type: "POST",
    url: "demo_show.php",
    cache: false,
    success: function (html) {

      $("#display").after(html);

      $('content').val('');
      $("#flash").hide();

    }

  });
}
function addComment() {
  var test = $("#content").val();
  var dataString = 'content=' + test;

  if (test == '') {
    alert("Please Enter Some Text");
  }
  else {
    $("#flash").show();
    $("#flash").fadeIn(400)
                .html('<img src="http://tiggin.com/ajax-loader.gif" align="absmiddle">&nbsp;<span class="loading">Loading Comment...</span>');

    $.ajax({
      type: "POST",
      url: "demo_insert.php",
      data: dataString,
      cache: false,
      success: function (html) {
        //$("#display").after(html);
        $('content').val('');
        $("#flash").hide();
        //Function for showing records
        showrecords();
      }
    });
  }
}

$(document).ready(function () {
  showrecords()

  $(".comment_button").click(function () {
    addComment();
    return false;
  });
});