如何获得PHP回应的div内容

时间:2015-06-05 07:40:16

标签: javascript php jquery html

我需要在div内容中获取值。单击按钮并在服务器端执行操作后,我的PHP函数执行:

echo "0";

echo "1";

取决于我的功能。所以,如果它是0,那么AJAX响应将为$("div#divResult").html(data);,我将0放在div divResult中。

我现在要做的是,我想执行一个js函数,以便在0中读取它是1还是divResult

这就是我执行它的方式:

<div id="divResult"><script>getDivResult();</script></div>

我的js功能:

function getDivResult()
{
    var result = $("div#divResult").text();

    if(result === "0")
    {
        alert("Badge Number already exists, please check again.");
    }
    else if(result === "1")
    {
        alert("Your details have been entered!")
        ADD_USER_POPUP.close;
    }
}

不知何故getDivResult函数没有执行。然而,0和1显示在div中。对此有何帮助?顺便说一句,我也试过.html

编辑:

这是我用于按钮单击的AJAX,并从PHP返回响应,该响应为1或0:

$.post(page, {
    name : name,
    badge_number : badge_number,
    category : category,
    priviledge : priviledge,
    action : "insert"
    }, function(data) {
    $("div#divResult").html(data);
    });

第二次编辑:

    function insertRow($name, $badge_number, $priviledge, $category)
    {
    $table_info = "TBL_USER_LOGIN";
    $query_string = "select badge_number from $table_info where badge_number = $badge_number";
    $result = @mysql_query($query_string) or die (mysql_error());
    $checkBadge = mysql_num_rows($result);
    if($checkBadge>0)
    {
        //echo "Badge Number $badge_number already exists. Please check again.";
        echo "0";
    }
    else
    {
        $query_string = "insert into $table_info(name, badge_number, priviledge, category) values('$name', '$badge_number', '$priviledge', '$category')";
        $result = @mysql_query($query_string) or die (mysql_error());
        //echo "Your details have been entered! Please click on 'View Users' to display all users.";
        echo "1";
    }

?>

    <?php

    $action = rtrim($_REQUEST['action']);

    if($action=="delete")
    {
        $id  = rtrim($_REQUEST['id']);
        $order = $_REQUEST['order'];

        echo deleteRow($id);
        echo selectAll($order);
    }
    elseif($action=="insert")
    {
        $name = $_REQUEST['name'];
        $badge_number = $_REQUEST['badge_number'];
        $priviledge = $_REQUEST['priviledge'];
        $category = $_REQUEST['category'];

        echo insertRow($name, $badge_number, $priviledge, $category);
    }
    elseif($action=="update")
    {
        $order = $_REQUEST['order'];

        echo selectAll($order);
    }

?>

7 个答案:

答案 0 :(得分:0)

将getDivResult()放入onclick,点击您点击的按钮

  

&LT;按钮onclick =&#34; getDivResult()&#34;&gt;点击我&lt; /按钮&GT;&#34;

我认为这将与你合作。

答案 1 :(得分:0)

当您.html(data)擦除所有现有元素并替换为新内容时:

$("div#divResult").html(data);

我想你应该这样做:

$("div#divResult").html(data);
getDivResult(); // call after it. and put the function globally.

答案 2 :(得分:0)

用div包围echo,然后尝试通过id获取值。

尝试通过json enconde回显 json_encode 然后使用AJAX

获取值

答案 3 :(得分:0)

您根本不需要将返回数据附加到页面。为什么不在AJAX请求完成后立即运行您的函数,如下所示:

$.ajax({
  success: function(data) {
    if(data === "0") {
      alert("Badge Number already exists, please check again.");
    }
    else if(data === "1") {
      alert("Your details have been entered!")
      ADD_USER_POPUP.close();
    }
  }
});

答案 4 :(得分:0)

我认为,此脚本<script>getDivResult();</script>已被ajax代码#divResult替换为$("div#divResult").html(data);的内容。而不是将脚本放在头部而不是#divResult内,以执行该操作。

答案 5 :(得分:0)

你的ajax在哪里?你是怎么做到的?

看起来你正在使用jQuery。尝试阅读文档 https://api.jquery.com/jquery.get/

您可以尝试这样的事情:

$.get( "ajax/test.html", function( data ) {
  if(data === "0")
  {
      alert("Badge Number already exists, please check again.");
  }
  else if(data  === "1")
  {
      alert("Your details have been entered!")
      ADD_USER_POPUP.close;
  }
});

数据应为0或1

答案 6 :(得分:0)

运行你的功能

getDivResult();

$("div#divResult").html(data);
ajax

中的