java - 即使我没有编写要记住的代码,多选框中的选定值也会在第二次加载弹出窗口时被记住

标签 java javascript html velocity

我正在使用包含 HTML 多选框的 Apache Velocity Macro (*.vm) 模板文件。该选择框的值由返回 ArrayList 的 Java 函数填充。

速度代码循环遍历此字符串 ArrayList 中的值,并生成渲染时可选择的元素。

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

第一次出现弹出窗口时,整个操作完美运行。用户从多选框中选择一堆值并关闭弹出窗口后,我可以使用 jQuery(#selectbox).val() 并毫无问题地访问用户选择的值。

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

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

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

最佳答案

您的 fancybox 弹出调用可能会创建一个具有 id #selectbox 的新 dom 元素,而不是使用页面中已呈现的元素。检查页面中呈现的元素以查看是否属于这种情况。

关于java - 即使我没有编写要记住的代码,多选框中的选定值也会在第二次加载弹出窗口时被记住,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14179074/

相关文章:

javascript - 从javascript中的参数化字符串中解析值

javascript - 网页无法在 Android 应用内浏览器上正确加载

javascript - 我的 javascript showhide 代码上的奇怪错误

jquery - 使用 jQuery 检查 div 的百分比宽度并执行条件样式

java - 向服务器端发送请求

java - 如果我不能在不转换为迭代器的情况下获取下一个元素,为什么 Java 有链表?

java - 如何发布 JSP 代码更改,从 Eclipse 到 Tomcat

部署小程序时,Glassfish 中出现 java.lang.reflect.InitationTargetException

javascript - 列表打开或关闭时如何添加加号和减号图标?

HTML 电子邮件 - Outlook.com/Hotmail 从 img 标签中剥离所有内联样式