Javascript $().load()未传递变量

Javascript $().load()未传递变量,javascript,jquery,Javascript,Jquery,我试图使用$.load传递变量,但该变量无法通过。下面是从嵌入表单设置变量的代码: "首先要确定是否有记录, 如果是Recordset.EOF,则 返回Response.WriteNo记录。 其他的 '如果有记录,则在字段中循环 %> 选择一个收发器: 就在我准备上吊的时候,我让它开始工作了- 我补充道,这句话是正确的: $chartDiv.load asp query.asp?q=+str,true 它成功了。它来自原始函数 function showCustomer(str) { var

我试图使用$.load传递变量,但该变量无法通过。下面是从嵌入表单设置变量的代码:

"首先要确定是否有记录, 如果是Recordset.EOF,则 返回Response.WriteNo记录。 其他的 '如果有记录,则在字段中循环 %> 选择一个收发器:
就在我准备上吊的时候,我让它开始工作了-

我补充道,这句话是正确的:

$chartDiv.load asp query.asp?q=+str,true

它成功了。它来自原始函数

function showCustomer(str) {
  var xhttp;    
  if (str == "") {
    document.getElementById("txtHint").innerHTML = "";
    return;
  }
  xhttp = new XMLHttpRequest();
  xhttp.onreadystatechange = function() {
    if (xhttp.readyState == 4 && xhttp.status == 200) {
      document.getElementById("txtHint").innerHTML = xhttp.responseText;

    }
  };
  xhttp.open("GET", "asp-query.asp?q="+str, true);
  xhttp.send();

}
不确定为什么这样的更改会使函数通过变量工作。我想要一个解释,如果有人有答案的话。还有,@basil,这条线也有类似的方法吗

$("#chartDiv").load('asp-query.asp', { q: str });
??
再次感谢您的帮助。

在我准备上吊的时候,我成功了-

我补充道,这句话是正确的:

$chartDiv.load asp query.asp?q=+str,true

它成功了。它来自原始函数

function showCustomer(str) {
  var xhttp;    
  if (str == "") {
    document.getElementById("txtHint").innerHTML = "";
    return;
  }
  xhttp = new XMLHttpRequest();
  xhttp.onreadystatechange = function() {
    if (xhttp.readyState == 4 && xhttp.status == 200) {
      document.getElementById("txtHint").innerHTML = xhttp.responseText;

    }
  };
  xhttp.open("GET", "asp-query.asp?q="+str, true);
  xhttp.send();

}
不确定为什么这样的更改会使函数通过变量工作。我想要一个解释,如果有人有答案的话。还有,@basil,这条线也有类似的方法吗

$("#chartDiv").load('asp-query.asp', { q: str });
??
再次感谢您的帮助。

危险:您很容易受到攻击,一周后您如何调试它?str是您所期望的并且正确编码没有特殊字符吗?当您直接在浏览器中打开一个页面时,它是否能像预期的那样工作,例如,这样asp query.asp?q=bla bla?最好使用$.load'asp-query.asp',{q:str},因为str变量中可能有特殊字符,在这种情况下可以安全地转换。Wolff,在函数内部,alert将返回str。这不是一个检查的好地方吗?Response.write SQL返回'Transponder=,因此没有传递任何变量。如果我输入q=blablabla,它就会通过。我会试试巴兹尔的建议。谢谢。危险:你很容易受到攻击,一周后你如何调试它?str是您所期望的并且正确编码没有特殊字符吗?当您直接在浏览器中打开一个页面时,它是否能像预期的那样工作,例如,这样asp query.asp?q=bla bla?最好使用$.load'asp-query.asp',{q:str},因为str变量中可能有特殊字符,在这种情况下可以安全地转换。Wolff,在函数内部,alert将返回str。这不是一个检查的好地方吗?Response.write SQL返回'Transponder=,因此没有传递任何变量。如果我输入q=blablabla,它就会通过。我会试试巴兹尔的建议。谢谢。@Quentin,我将在SQL查询中使用占位符来防止注入攻击。另外,当我查看“客户端”页面的源代码时,我可以看到我正在调用asp-query.asp,如下所示:函数showcusterStr{//alertFunction showcuster triggered!!字符串是:+str;$chartDiv.load asp query.asp?q=+str,true;}我如何隐藏它?谢谢类似的方法是,在成功回调中,您应该在容器中手动设置检索到的html响应:$'chartDiv'。htmlresponse@Quentin,我将在SQL查询中使用占位符来防止注入攻击。另外,当我查看“客户端”页面的源代码时,我可以看到我正在调用asp-query.asp,如下所示:函数showcusterStr{//alertFunction showcuster triggered!!字符串是:+str;$chartDiv.load asp query.asp?q=+str,true;}我如何隐藏它?谢谢类似的方法是,在成功回调中,您应该在容器中手动设置检索到的html响应:$'chartDiv'.htmlresponse