下拉列表的onChange()第二次不起作用
onChange() for dropdown does not work the second time
这在标题中很难概括。我在jQuery Mobile中使用CodeIgniter。我有一个带有下拉列表的页面(index.php),当单击(onChange)时,它会提交表单。
<select name="organiser_dropdown" onchange="this.form.submit()">
它运行良好。因此,它将我带到下一页(view_events),没有任何问题。然而,当我按下手机(Samsung Galaxy S Plus)上的"后退"按钮,并从index.php中的下拉列表中选择一个选项时,表单提交,我会转到带有正确信息的正确页面(view_events),然后它会将我带回带有下拉列表的页面。
没有重定向,代码逻辑似乎是正确的。当我在桌面浏览器中测试它时,一切都正常。
我几乎可以肯定的是,问题是手机正在缓存页面,所以当我点击返回index.php时,它不会重新加载页面,不知何故,这会破坏它?我认为这是缓存,因为页面似乎不需要时间来重新加载。
我使用了一个提交按钮而不是onChange()函数,一切正常。这也表明缓存存在问题。
我使用jQuery来监听onChange事件,并通过单击隐藏按钮来提交表单。它工作正常,但加载页面时下拉列表仍显示在手机GUI上。出于可用性的原因,如果我把它作为一个选项,这似乎有点奇怪。
这不是一个原生的手机应用程序,而是一个移动网站。
在CodeIgniter中,控制器使用具有1个参数的功能,该参数是从下拉列表中选择的项目:
public function view_events($organiser_type = '') {...}
当*$organizer_type*没有通过url发送时,我有一段代码从张贴的表单中检索值:
if($this->input->post('organiser_dropdown')) {
$organiser_type = $this->input->post('organiser_dropdown');
}
我已经解决了这里的问题。我认为一旦我按下手机上的后退按钮,jQueryMobile就没有完全执行index.php页面。
我把这个放在我所有的链接中,以强制在没有ajax的情况下加载页面:
data-ajax="false"
有关这方面的更多信息,请点击此处:http://jquerymobile.com/test/docs/pages/page-links.html
- 两个层次的手风琴除了第一次不起作用
- Jquery Onclick 事件函数第二次不起作用
- Jquery onblur 第二次不起作用
- css'不显示'第一次不起作用
- 下拉列表的onChange()第二次不起作用
- Ajax 成功函数第二次不起作用
- Jquery 模态第二次不起作用
- 电话间隙介质记录第二次不起作用
- 添加按钮第二次不起作用
- 我的点击第二次不起作用
- $watch在更改字符串时第二次不起作用
- javascript's函数第二次不起作用
- 输入文件的点击事件第二次不起作用
- ajax调用第二次不起作用
- 自动完成在引导模式对话框上第二次不起作用
- .on click .css第二次不起作用
- JavaScript点击第二次不起作用
- Iframe设置为单击事件.它适用于打开页面后的第一次点击.但第二次不起作用.请帮忙
- window.open两次不起作用(第二个窗口没有出现)-Blocker解决方法
- Position Absolute第二次不起作用