0

我想要做的是通过 jquery 选择来获取所选元素的值。之后,这些值通过 ajax 发布到 php 脚本,然后从数据库中检索数据并将其显示在同一页面上(称为自动竞争)。

var marvalue=$("input[name=m_status]:checked").val();
var fromhvalue=$("#fromheight").val();
var tohvalue=$("#toheight").val();
var value = $("#edu_det1").val();
alert (value);
var regvalue = $("#religion").val();
alert (regvalue);
var occvalue = $("#occupation").val();
alert (occvalue);
var convalue = $("#country").val();
alert (convalue);

警报用于检查正确的值。正如您在上面的代码中看到的,这将从不同的输入元素中获取值。下面是我用来发布到 php 的代码

/*                              
$.post("regsearch.php", {queryString: ""+value+"",queryString1: ""+marvalue+"",queryStringfage: ""+fage+"",queryStringtage: ""+tage+""+queryStringfromh: ""+fromhvalue+""+queryStringtoh: ""+tohvalue+""+}, function(data) { // Do an AJAX call
            $('#suggestions').fadeIn(); // Show the suggestions box
            $('#suggestions').html(data); // Fill the suggestions box
        });
                                        */

问题

当评论被删除时,警报弹出窗口也没有显示结果。好的,因为没有发布任何查询。
主要部分是当我使用下面的代码时,它只保留m_status并且edu_det1它可以工作。

marvalue=$("input[name=m_status]:checked").val();
alert (marvalue);

var value = $("#edu_det1").val();

alert (value); 

上面的邮编是

$.post("regsearch.php", {
    queryString: ""+value+"",
    queryString1: ""+marvalue+"",
    queryStringfage: ""+fage+"",queryStringtage: ""+tage+""
}, function(data) {
    // Do an AJAX call
    $('#suggestions').fadeIn(); // Show the suggestions box
    $('#suggestions').html(data); // Fill the suggestions box
});

此处不添加年龄及其验证码。有什么问题以及如何解决这个问题?

4

3 回答 3

0

首先,您应该使用控制台查看 Javascript 错误,因为我确信这会产生一些错误。例如,查询字符串未定义。

我也会使用 console.log 而不是警报,它不那么烦人,而且信息量更大。

然后:您不需要使用 fe ""+marvalue+"" - 只需使用 marvalue。另一方面 fe queryString 应该被引用......

$.post("regsearch.php", {'queryString':value,'queryString1': marvalue,'queryStringfage':fage,'queryStringtage':tage,'queryStringfromh': fromhvalue,'queryStringtoh':tohvalue}, function(data) { 
            $('#suggestions').fadeIn();
            $('#suggestions').html(data);
});
于 2012-08-22T13:45:09.853 回答
0

如果你使用jqueryserialize()函数会更好。这将使您的生活更容易使用表格。

var querstring = $(form).serialize();

以上会有所帮助

于 2012-08-22T13:45:37.967 回答
0

我猜想使用 ajax post jQuery.ajax() 会做同样的事情,你甚至可以序列化页面中的字段。

http://api.jquery.com/jQuery.ajax/#jQuery-ajax-settings

我已经完成了类似类型的代码

UserName 是我要传递的字段

        var data = $('#Username').serialize();
        $('#usernameCheck').empty();

        if (!$("form").validate().element("#Username"))
            return;

        $.ajax({
            url: '/SignUp/CheckUsername',
            type: 'POST',
            data: data,
            async: true,
            success: function (result) {
                if (result == 1) {

                    $('#usernameCheck').html('<font color=green>Username available</font>');
                    usernameOK = true;
                }
                else if (result == 2) {

                    $('#usernameCheck').html('<font color=red>Username not available</font>');
                    usernameOK = false;
                }
                else {
                    $('#usernameCheck').empty();
                    usernameOK = false;
                }

            }
        });
于 2012-08-22T13:46:27.450 回答