Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.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
Jquery <;选择>;ajax调用_Jquery_Ajax_Html Select - Fatal编程技术网

Jquery <;选择>;ajax调用

Jquery <;选择>;ajax调用,jquery,ajax,html-select,Jquery,Ajax,Html Select,我在我的网站上使用jQuery,我有一个关于我的项目的更新部分,我有三个下拉列表: 完成了吗 工作时间 谁参与了这个项目 我试图使用jQuery创建一个ajax调用,当我选择它时,调用$.ajax()并将数据发送到我的php页面以更新我的mysql数据库 我猜我可以做到这一点: 获取select中的数据并将其存储在变量中,然后使用$.ajax将其作为数据发送,但我不确定在您选择并运行ajax之后如何捕获该值 有什么建议吗?我会用。。比如: $.post("updater.php", { co

我在我的网站上使用jQuery,我有一个关于我的项目的更新部分,我有三个下拉列表:

  • 完成了吗
  • 工作时间
  • 谁参与了这个项目
我试图使用jQuery创建一个ajax调用,当我选择它时,调用$.ajax()并将数据发送到我的php页面以更新我的mysql数据库

我猜我可以做到这一点:

获取select中的数据并将其存储在变量中,然后使用$.ajax将其作为数据发送,但我不确定在您选择并运行ajax之后如何捕获该值

有什么建议吗?

我会用。。比如:

$.post("updater.php", { completed: variableWithCompletedFromSelect } );
只需在select上的onchange事件中调用它,并传入select的值。然后您的php脚本将有$\u POST['completed']和新值。

我将使用。。比如:

$.post("updater.php", { completed: variableWithCompletedFromSelect } );

只需在select上的onchange事件中调用它,并传入select的值。然后,您的php脚本将有$\u POST['completed']和新值。

正如FryGuy所说,$.POST方法可能是您最好的选择,尽管我会这样安排:

$("#project select").change(function(){ // use one selector for all 3 selects
    $.post("someurl.php",{
        // data to send
        completed: $("select#completed").val(),
        hours:     $("select#hours").val(),
        who:       $("select#who").val()
    }, function(data) {
        // do callback stuff with the server response 'data' here
    });
});

如果这三个选择在页面上出现不止一次,那么这可能不是您想要的。我建议您通读jquery文档,以获得事件的处理。至于提取数据,您只需要使用选择器和方法,如
.text()
.val()
.html()
.attr()
等。。。在你需要它们的时候。您想要的信息总是在DOM中的某个地方。

正如FryGuy所说,$.post方法可能是您最好的选择,尽管我会这样安排:

$("#project select").change(function(){ // use one selector for all 3 selects
    $.post("someurl.php",{
        // data to send
        completed: $("select#completed").val(),
        hours:     $("select#hours").val(),
        who:       $("select#who").val()
    }, function(data) {
        // do callback stuff with the server response 'data' here
    });
});

如果这三个选择在页面上出现不止一次,那么这可能不是您想要的。我建议您通读jquery文档,以获得事件的处理。至于提取数据,您只需要使用选择器和方法,如
.text()
.val()
.html()
.attr()
等。。。在你需要它们的时候。您想要的信息总是在DOM的某个地方。

谢谢!那么,无论我更新的是哪一个,每次更新都会选择吗?我宁愿这个而不是三个不同的。我会使用:$_POST['completed']等来捕获数据。是的,所以无论您更改哪个选项,它都会触发POST,并且每次都会获取每个选项的当前值。谢谢!那么,无论我更新的是哪一个,每次更新都会选择吗?我宁愿这个而不是三个不同的。我会使用:$_POST['completed']等捕捉数据。是的,所以无论您更改哪个选项,它都会触发POST,每次它都会获取每个选项的当前值。