0

当用户使该文本框失焦时,我正在尝试使用 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”的文本框中的文本。

谁能看到出了什么问题?

4

3 回答 3

1

尝试像这样更改它:

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

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

于 2013-06-29T11:22:06.410 回答
1

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

var aircraftReg = $(this).val();
$.get("searchDatabase.php?q="+aircraftReg , function(data){                   
     //function logic goes here             
});
于 2013-06-29T11:26:14.310 回答
1

您已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兼容的。

于 2013-06-29T12:07:39.237 回答