2016-06-21 32 views
1

在表单加载时,组合框将填充来自数据库的值。因此,在选择任何组合框值时,会触发数据库查询并在下面的表中填充值。我的问题是如何在选择组合框的值时禁用组合框,直到从数据库中提取值。我已经使用了form.disable,但它只在第一批值到来之前起作用,直到所有值都被取出为止。禁用组合框,直到获取数据库中的值

+0

你能展示你的代码吗? – jcubic

+0

我不能。但我可以告诉工作。 onchange()它调用一个从数据库中检索值的函数。在这个函数里我写了disabled = true。它工作正常。但值提取数以千计,直到所有的值被提取,我想保持禁用组合框。 – Dhruvil

回答

0

即使在onChange()返回后,如果您仍然向表中添加数据(有多个异步调用,我猜),组合框没有办法知道它不应该被启用。
您必须添加逻辑来检查表是否已完成加载,通过与数据库COUNT()进行比较或在返回的值中包含“最后一批数据”标志。

最简单的方法可能是在批处理返回值的数量少于预期的批处理大小时,使表加载功能启用组合框。因此,如果一次加载表500行,并且一次调用只返回379个值,那么这是最后一批,然后可以启用组合框。

也许你的情况更复杂,在这种情况下,你的代码的一个例子将是必要的。

+0

你能帮助一个相同的例子吗? – Dhruvil

相关问题