js怎么获取下拉框值的焦点
介绍数据库执行的一个非常常见的功能是能够从组合框/列表框中进行选择,并基于该选择打开报表或表单。 例如,您可能有一个组合框,其中列出了数据库中的所有公司。 您选择一个,并找到所选公司未完成的所有服务请求。 这很简单。 但是,如果您想查找所有公司的所有出色服务要求怎么办? 我已经做了几次,但是我发现了一种我认为更干净的新方法。
步骤1:在组合框中获取所有选项过去,组合框后面的表不能将其主键字段设置为自动编号,因为我希望ALL值为0,而自动编号不支持该值。 然后,无论何时使用它,我都必须过滤掉ALL记录,以使ALL不会与记录相关。 相反,我现在使用UNION查询将ALL记录追加到搜索组合框的行源中,如下所示
SELECT CompanyID, Company
FROM tblCompanies
UNION
SELECT 0, "--ALL--"
FROM tblCompanies
这包括我的公司表(tblCompanies)中的所有公司和--ALL--记录上的附加信息,以便用户可以搜索所有公司。
步骤2:设置查询以在选择全部时查找所有值
我更喜欢将报表和表单建立在querydefs之上,因为如果发现期望的记录或意外的记录,它们将更易于排除故障,因此我对该步骤的解释将以查询为基础。 但是,这将适用于任何WHERE子句或条件(即
DoCmd.OpenReport ... Criteria:= ... )因此,继续以查找指定公司或所有公司的记录为例,假设我的组合框被称为
MyComboBox,并且名为MyForm 。 正在搜索的字段名为CompanyID_fk ,它是“公司”表与“服务请求”表之间的一对多关系中的外键。 因此查询的WHERE子句将需要添加以下条件WHERE Forms!MyForm!MyComboBox In (0, CompanyID_fk)
结论
此解决方案提供了一种以非常干净和有效的方式轻松查找与组合框中所有值匹配的记录的方法。 通过这种方式,公司表中的主键字段可以保留为自动编号字段,而
--ALL--值仅在需要提取报告时可用。 在使用数据库一段时间后,也可以非常轻松地添加它,而无需更改表设计。翻译自: https://bytes.com/topic/access/insights/947683-getting-results-all-values-combo-box
js怎么获取下拉框值的焦点