【问题标题】:Passing var using jquery & ajax使用 jquery 和 ajax 传递 var
【发布时间】:2013-06-29 11:20:40
【问题描述】:

当用户使该文本框失去焦点时,我正在尝试使用 jquery 和 ajax 将 html 文本框表单字段的值传递给另一个 .php 文件。文本框的 ID 为“aircraftReg”。我使用的代码如下...

$(document).ready(function(){
    $("#aircraftReg").blur(function() {
        var aircraftReg = $(this).value;
        $.get("searchDatabase.php?q=aircraftReg", function(data){                   
            // My function                 
        });  
    });
});

我认为问题在于创建 var aircraftReg。我正在尝试将其值分配给 id 为“aircraftReg”的文本框中的文本。

谁能看出发生了什么问题?

【问题讨论】:

    标签: php jquery html ajax get


    【解决方案1】:

    尝试像这样改变它:

     var aircraftReg = $(this).val();
     $.get("searchDatabase.php?q="+aircraftReg , function(data){                   
                // My function                 
            }); 
    

    要获取文本字段(或其他输入)的值,jQuery 中有 .val() 方法。

    【讨论】:

      【解决方案2】:

      您需要更改您的 Url,因为您将 javascript var 传递给 url,所以我必须添加 +

      var aircraftReg = $(this).val();
      $.get("searchDatabase.php?q="+aircraftReg , function(data){                   
           //function logic goes here             
      });
      

      【讨论】:

      • 好像你的答案和我的一模一样? ;)
      • 但必须有一些解释。
      • 好的,好的解释比正确的代码更重要!
      • 我不是说解释比正确的代码更重要,但如果我们需要解释一点来理解 OP。
      【解决方案3】:

      您已将 aircraftReg 作为常规字符串而不是作为 javascript 变量传递。

      $(document).ready(function(){
          $("#aircraftReg").blur(function() {
              var aircraftReg = $(this).value; //or $(this).val();
              $.get("searchDatabase.php?q="+ encodeURIComponent(aircraftReg), function(data){                   
                  // My function                 
              });  
          });
      });
      

      此外,您还有三个编码选项:

      escape() 不会编码:@*/+

      encodeURI() 不会编码:~!@#$&*()=:/,;?+'

      encodeURIComponent() 不会编码:~!*()'

      注意:escape() 函数是非 ASCII,encodeURI()encodeURIComponent()UTF-8 兼容的。

      【讨论】:

        猜你喜欢
        • 2016-10-02
        • 2014-04-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-02-10
        • 1970-01-01
        相关资源
        最近更新 更多