基于Jquery事件的非填充数据

基于Jquery事件的非填充数据,jquery,Jquery,我在一个页面上有4个下拉框,它们依赖于上一个下拉框 D1 > D2 > D3 > D4 背景故事: 这个想法是d1触发d2,d2触发d3,d3触发d4。我编程的方式(不是我的选择,而是一个要求)是给数据库提供sql查询,当它返回信息时,它填充下拉列表。这意味着,如果我调用d1,它将发送该数据库查询,并且在数据库响应之前,它将尝试发送d2的数据库查询。由于d2依赖于d1,因此会出现此错误,因为d1仍然为null或之前的值 问题: 是否有一种方法可以在下拉列表的数据更改时使用jq

我在一个页面上有4个下拉框,它们依赖于上一个下拉框

D1 > D2 > D3 > D4
背景故事:

这个想法是d1触发d2,d2触发d3,d3触发d4。我编程的方式(不是我的选择,而是一个要求)是给数据库提供sql查询,当它返回信息时,它填充下拉列表。这意味着,如果我调用d1,它将发送该数据库查询,并且在数据库响应之前,它将尝试发送d2的数据库查询。由于d2依赖于d1,因此会出现此错误,因为d1仍然为null或之前的值

问题: 是否有一种方法可以在下拉列表的数据更改时使用jquery触发事件

更多信息

我已经在所有下拉列表中添加了.change(),但这些似乎与用户更改它们有关。我甚至愿意接受关于如何做到这一点的建议,以使其有效。这背后的主要思想是,4个下拉列表中的任何一个都可以更改。如果D3被更改,那么D4需要更改如果D2被更改,那么D3和D4需要更改。

“当下拉列表的数据更改时,有没有一种方法可以使用jquery触发事件?”

是的,有点。假设某个函数正在更改该数据,则在更新数据后,可以使用该函数触发更改事件,就像用户那样。假设你想让它为D2开火

function updateData(){
  get data for D2; //obvious psuedo code
  update data for D2; //obvious psuedo code
  $('#D2').change(); //jquery fired the change on the dropdown as if the user made the change
}