使用AJAX向PHP发送数据并将答案分配给文本框

使用AJAX向PHP发送数据并将答案分配给文本框,php,jquery,ajax,Php,Jquery,Ajax,我正在编写一个非常简单的web表单,其中我使用jQueryAjax将数据从文本框发送到PHP,并希望用响应(在PHP中操作)填充html页面中的标签 我在HTML页面中没有表单,而是使用多个对象,因为页面应该包含3个步骤,我不想使用action 以下是相关代码: HTML/JS function funcGetBatches() { CatNum = document.getElementById("CatNumber"); con

我正在编写一个非常简单的web表单,其中我使用jQueryAjax将数据从文本框发送到PHP,并希望用响应(在PHP中操作)填充html页面中的标签

我在HTML页面中没有表单,而是使用多个对象,因为页面应该包含3个步骤,我不想使用action

以下是相关代码:

HTML/JS

        function funcGetBatches() {
            CatNum = document.getElementById("CatNumber");
            console.log(CatNum.value);

            $.ajax({
                type: "GET",
                url: "./php/conn.php",
                data: CatNum.value,
                datatype: "text",
                success: function(data) {
                    console.log("Succeeded!!!" + CatNum.value);
                    $("#partName").text('__________');
                },
                Error: function(jqXHR, textStatus, error) {}
            });
       }
    var button1 = document.getElementById("getBatches");
    button1.addEventListener("click", funcGetBatches);
PHP

if(isset($_GET)){
$myCatNum = $_GET['CatNum.value'] + " success!";
  console.log("MyCatNum: " + $myCatNum);
'________________'
}
我正在php代码中记录这个过程,并且确实看到它正在运行

我确实认为我丢失了一两段代码,我在代码中的两个位置都用_________;标记了

请帮忙


谢谢。

我建议您不要混合使用本机JavaScript和jQuery。考虑下面的jQuery脚本:

function funcGetBatches() {
  var CatNum = $("#CatNumber").val();
  console.log(CatNum);

  $.ajax({
    type: "GET",
    url: "./php/conn.php",
    data: { catnum: CatNum },
    datatype: "text",
    success: function(data) {
      console.log("Succeeded!!!", CatNum, data);
      $("#partName").text(data);
    },
    error: function(x, s, e) {
      console.log(x, s, e);
    }
  });
}
$("#getBatches").click(funcGetBatches);
这将把
CatNum
发布到PHP脚本中,返回的任何文本数据都将添加到
#partName
元素中

对于PHP,这必须将数据回送出来

$parts = array(
  "Elbow",
  "Conduit",
  "Nipple",
  "Coupler"
);
if(isset($_GET['catnum'])){
  $cNum = (int)$_GET['catnum'];
  echo $parts[$cNum];
}

如您所见,这可能是一种基于提交的GET请求返回新数据的方法。

data:value
是一个问题。如果您希望后端以queryString的形式获取数据(这是
$\u get
所期望的),那么数据需要是一个键值对,如
数据:{catNum:catNum.value}
。然后,
$\u GET['catNum']
应该可以工作您的PHP和AJAX标签是向后的。
错误:
应该是
错误:
。JavaScript区分大小写。您是否尝试过在
$.ajax({success(data){}})
函数中将
数据
记录到控制台?