在多选框中选择的值被记住的第二次弹出加载,即使我没有写代码来记住

selected values in multiselect box are remembered the 2nd time popup loads even though I have not written code to remember

本文关键字:代码 加载 第二次 选择      更新时间:2023-09-26

我使用Apache Velocity Macro (*.vm)模板文件,其中包含一个HTML多选择框。这个选择框的值由返回数组列表的Java函数填充。

velocity代码循环遍历这个ArrayList of Strings中的值,并生成渲染时可选择的元素。

呈现的HTML由javascript的fancybox弹出窗口显示,用户可以选择上面提到的Java函数返回的任何/所有值。

整个操作在第一次弹出窗口出现时就完美地工作了。在用户从多选择框中选择一堆值并关闭弹出窗口后,我可以使用jQuery(#selectbox).val()并访问用户选择的值而没有任何问题。

然而,如果用户第二次重新打开弹出窗口并选择了不同的值集并关闭弹出窗口,jQuery(#selectbox).val()返回第一次选择的值!除非我在浏览器中刷新网页,否则此行为将继续。

所以我的问题是:有人知道是什么导致了这种行为吗?有没有办法停止记住以前选择的值?

如果这是相关的,我在OSx 10.6.4上使用Safari 5, Apache Tomcat 6, Java 6。

有一个机会,你的fancybox弹出调用正在创建一个新的dom元素与id #selectbox,而不是使用一个已经在页面中呈现。检查页面中呈现的元素,看看是否存在这种情况。