选择页面加载下拉列表的值

时间:2013-04-26 13:15:59

标签: jquery knockout.js

我正在尝试配置页面,具体取决于用户选择之前的下拉值。 问题在于,如果我尝试在$(document).ready$(window).load中执行此操作,则下拉列表尚未“填充”用户之前选择的已保存选项。

换句话说,使用:

$("#mySelect").val()
$(document).ready中的

会导致null

$(window).load中的

会导致null

使用:

$("#mySelect option:selected").text()
$(document).ready中的

会导致""

$(window).load中的

会导致""

更多信息

使用通用处理程序填充下拉列表,该处理程序从数据库中的查找表中检索值,并使用jquery append方法动态构建html。

然后,另一个通用处理程序检索用户先前选择的已保存数据。 用户数据使用挖空视图模型绑定到下拉列表。

所有这些都发生在$(document).ready

在所有这些发生之后,我想根据用户先前为特定下拉列表选择的选项配置页面。通过配置,我的意思是需要禁用某些控件。

所有这一切我都能做到。当用户在下拉列表中选择不同的选项时,页面也会正确配置,问题是在检索到所有数据并且敲除视图模型绑定到控件后,我无法确定在下拉列表中选择的选项。换句话说,当用户重新访问页面时,我无法根据保存的下拉选项配置页面,因为我无法检索$(document).ready下拉列表的已保存选项。

如果在这种情况下使用jquery val()方法是错误的方法,请告知我应该探索哪些备选方案。

非常感谢在这方面的任何帮助或建议。

1 个答案:

答案 0 :(得分:1)

您应该在您提到的generic handler 之后填充下拉列表,而不是在文档加载后设置。