Ajax没有传输正确的参数

球衣

我正在尝试发出ajax请求,但我要发送的参数无法传输。所以我有user.php

<script>
function showUser(str) {

  if (str=="") {
    document.getElementById("txtHint").innerHTML="";
    return;
  } 
  if (window.XMLHttpRequest) {
    // code for IE7+, Firefox, Chrome, Opera, Safari
    xmlhttp=new XMLHttpRequest();
  } else { // code for IE6, IE5
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
  xmlhttp.onreadystatechange=function() {
    if (xmlhttp.readyState==4 && xmlhttp.status==200) {
      document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
    }
  }
  document.write(str);
  xmlhttp.open("GET","getuser.php?q="+str,true);
  xmlhttp.send();
}
</script>
<form>
<select name="users" onchange="showUser(this.value)">
<option value="">Select a person:</option>
<option value="1">John Smith</option>
<option value="2">Lois Griffin</option>
<option value="3">Joseph Swanson</option>
<option value="4">Glenn Quagmire</option>
</select>
</form>

这似乎可以正确检索该值。如果我选择Joseph Swanson,则3显示正常。但是当我去getUser.php

<?php
$q = intval($_GET['q']);
var_dump($q);
?>

int 0每次都得到问题是什么?

永恒的时光

分配为intval之前,请检查该值是否为数字。这是来自PHP文档

返回值

成功时为var的整数值,失败时为0的整数值。空数组返回0,非空数组返回1。

最大值取决于系统。32位系统的最大有符号整数范围为-2147483648至2147483647。因此,例如,在这样的系统上,intval('1000000000000')将返回2147483647。64位系统的最大有符号整数值为9223372036854775807。

字符串很可能返回0,尽管这取决于字符串的最左边字符。适用整数转换的通用规则。

我建议使用AJAX代替JQuery,在学习时更容易掌握。

//add JQuery//
<script src="//code.jquery.com/jquery-1.11.2.min.js"></script>
<script>
function showUser(str) {
    $(function() {
        $.ajax({
            url: "/getuser.php", //assumes file is in root dir//
            type: "post",
            data: "q="+str,
            processData: false,
            success: function(response) {
                alert ("processed"); //alerts that PHP processed the request//
                $("#txtHint").html(response); //inserts echoed data into div//
            }
        });
    });
}
</script>

然后在PHP文件中,尝试添加...

echo $_POST['q'];
exit;

这至少可以告诉您他们在说话。但它不会在屏幕上显示,您需要查看开发人员工具->网络->响应(但也应位于中#txtHint)。如果收到响应,请删除该响应并正常尝试。

编辑:
还要检查开发人员工具中的“网络”标签以获取请求,以确保已发送请求。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

ajax请求没有参数

来自分类Dev

Jmeter没有以正确的方式传递参数

来自分类Dev

Python子进程没有正确的参数

来自分类Dev

AJAX POST没有收到正确的值

来自分类Dev

Ajax发布的路线中没有参数

来自分类Dev

JavascriptCore没有正确调用带有参数的函数

来自分类Dev

Powershell没有将参数正确传递给cmake

来自分类Dev

Powershell没有将文件的正确路径作为参数发送

来自分类Dev

我没有AddModulesAsync(C#Discord.Net)的正确参数

来自分类Dev

Powershell没有将文件的正确路径作为参数发送

来自分类Dev

没有收到来自AJAX POST调用的正确输出

来自分类Dev

我的 ajax 来源的 DataTable 没有正确解析吗?

来自分类Dev

ajax 返回的表单没有发送正确的 id

来自分类Dev

为什么 Ajax 没有正确更新模型?

来自分类Dev

如果从文件流式传输,如何确保数据正确缩进。看我的代码,没有得到预期的结果

来自分类Dev

没有映射内存的RDMA传输

来自分类Dev

没有lrzsz的串行文件传输

来自分类Dev

Filezilla:哪些文件没有传输?

来自分类Dev

没有映射内存的RDMA传输

来自分类Dev

当没有收到正确数量的参数时,str replace的行为很有趣

来自分类Dev

调用者没有从带有 ajax 的异步方法中获得正确的值

来自分类Dev

没有参数的getConstructor

来自分类Dev

没有参数的委托

来自分类Dev

没有参数的AsyncTask

来自分类Dev

调用时无法正确识别方法签名(方法xxx的重载没有2个参数)

来自分类Dev

没有为一个或多个必需参数给出值/ SQL应该正确

来自分类Dev

在Java中编写可测试代码而没有可选参数的正确方法与在ABAP OO中注入

来自分类Dev

为什么存储过程不返回什么,即使参数正确也没有?

来自分类Dev

无法在没有参数的情况下执行,输入未正确解析

Related 相关文章

  1. 1

    ajax请求没有参数

  2. 2

    Jmeter没有以正确的方式传递参数

  3. 3

    Python子进程没有正确的参数

  4. 4

    AJAX POST没有收到正确的值

  5. 5

    Ajax发布的路线中没有参数

  6. 6

    JavascriptCore没有正确调用带有参数的函数

  7. 7

    Powershell没有将参数正确传递给cmake

  8. 8

    Powershell没有将文件的正确路径作为参数发送

  9. 9

    我没有AddModulesAsync(C#Discord.Net)的正确参数

  10. 10

    Powershell没有将文件的正确路径作为参数发送

  11. 11

    没有收到来自AJAX POST调用的正确输出

  12. 12

    我的 ajax 来源的 DataTable 没有正确解析吗?

  13. 13

    ajax 返回的表单没有发送正确的 id

  14. 14

    为什么 Ajax 没有正确更新模型?

  15. 15

    如果从文件流式传输,如何确保数据正确缩进。看我的代码,没有得到预期的结果

  16. 16

    没有映射内存的RDMA传输

  17. 17

    没有lrzsz的串行文件传输

  18. 18

    Filezilla:哪些文件没有传输?

  19. 19

    没有映射内存的RDMA传输

  20. 20

    当没有收到正确数量的参数时,str replace的行为很有趣

  21. 21

    调用者没有从带有 ajax 的异步方法中获得正确的值

  22. 22

    没有参数的getConstructor

  23. 23

    没有参数的委托

  24. 24

    没有参数的AsyncTask

  25. 25

    调用时无法正确识别方法签名(方法xxx的重载没有2个参数)

  26. 26

    没有为一个或多个必需参数给出值/ SQL应该正确

  27. 27

    在Java中编写可测试代码而没有可选参数的正确方法与在ABAP OO中注入

  28. 28

    为什么存储过程不返回什么,即使参数正确也没有?

  29. 29

    无法在没有参数的情况下执行,输入未正确解析

热门标签

归档