Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 这段AJAX代码是什么意思?_Javascript_Jquery_Ajax - Fatal编程技术网

Javascript 这段AJAX代码是什么意思?

Javascript 这段AJAX代码是什么意思?,javascript,jquery,ajax,Javascript,Jquery,Ajax,我在互联网上搜索信息,但似乎找不到有关我正在使用的AJAX代码的任何信息: function getEmployeeFilterOptions(){ var opts = []; $checkboxes.each(function(){ if(this.checked){ opts.push(this.name); } }); 另外,这段代码之间有什么区别,因为它们都是调用AJAX的方法 function upda

我在互联网上搜索信息,但似乎找不到有关我正在使用的AJAX代码的任何信息:

function getEmployeeFilterOptions(){
    var opts = [];
    $checkboxes.each(function(){
        if(this.checked){
            opts.push(this.name);
        }
    });
另外,这段代码之间有什么区别,因为它们都是调用AJAX的方法

function updateEmployees(opts){
    $.ajax({
        type: "POST",
        url: "submit.php",
        dataType : 'json',
        cache: false,
        data: {filterOpts: opts},
        success: function(records){
            $('#employees tbody').html(makeTable(records));
        }
    });
如果有人能详细解释每件事的含义,那就太好了。

第一个代码 第一个代码只是一个伪代码,或者您所说的用于检查checkbox输入元素的检查性的算法代码

function getEmployeeFilterOptions(){
    var opts = [];
    $checkboxes.each(function(){
        if(this.checked){
            opts.push(this.name);
        }
    });
});
这将检查每个复选框,注意.each方法。它将为每个元素执行一个函数。并将检查是否存在状况。但请注意,复选框不会起任何作用。您很可能会将其检查为:

$('input[type=checkbox]').each(function () {
  /* here if else statement */
}
第二个代码 第二个代码是执行ajax请求的真实代码

function updateEmployees(opts) {
    $.ajax({
        type: 'POST',
        url: 'submit.php',
        dataType : 'json',
        cache: false,
        data: {
          filterOpts: opts
        },
        success: function(records) {
          $('#employees tbody').html(makeTable(records));
        }
    });
});
这段代码将发送一个AJAX请求,就像使用method=post提交表单一样,因此您可以看到代码的类型:“post”部分。接下来是页面的URL,在这里可以找到捕获请求的页面。数据类型也是页面的mime,设置为json。服务器会知道请求是json格式的。您也可以在服务器端处理它。例如:

if(request_type == 'json') {
  /* note, it is also a pseudo code */
}
然后,缓存设置为false,这样浏览器和服务器就不能也决不能保存此请求的会话

数据是添加到HttpRequest的其他响应或查询字符串。例如,如果请求是GET类型:“GET”。然后,您可以添加您的姓名或任何其他数据,如:

data: 'user_name=yourname&password=password'
这将被添加到url中


接下来是一个在响应成功时要执行的函数。如果没有发现错误,那么将执行此函数并更新表

第一段代码中没有ajax。这两种方法之间的关系是什么?第一个不是ajax调用。第一个代码段循环遍历一组元素,对每个元素测试一个条件,并将传递该条件的元素添加到数组中。第二个代码段向服务器端资源发送POST请求,并使用响应更新页面。这两个人在各方面都完全不同。谢谢你的解释,这对我来说更清楚了一点!因为这些函数是用于复选框的,所以当您开始在文本框中键入名称时,您能告诉我如何使文本框在更改时工作吗?我真的认为,您首先需要学习jQuery。。然后您将知道如何选择元素!:不过,您可以使用:$'textarea'.changefunction{…}…是的,确实是您的正确答案,我需要了解有关此编程的所有信息。我知道:但是感谢您的代码和建议,我一定会尝试一下!是的,不客气你可以在这里尝试和学习一些::我希望,你会发现它很容易。。。