我正在创建一个包含数百行的数据网格,每行包含一个复选框,以便用户可以从网格中选择一个项目.
现在,用户可能花费大量时间过滤/搜索网格并勾选所需的复选框,只是意外地按下键盘上的退格键或单击页面上的超链接.他们会丢失所有的复选框选项.
因此,我想介绍一些功能,如果至少勾选了一个复选框,那么如果用户无意中执行了将其导航离开页面的操作,则会显示JavaScript确认消息以通知用户此操作.
复选框都属于同一组,例如它将被称为“产品”.
这有可能吗?
解决方法
当用户导航时会发生一个beforeunload事件:
http://jsfiddle.net/FprNV/1/.
返回一个字符串会导致出现一条带有两个按钮的消息(保持/导航);这个对话框的确切实现因浏览器而异.
$(window).bind('beforeunload',function() { var checkBoxcount = $("input:checkBox:checked").length; if(checkBoxcount > 0) { return 'Are you sure?'; } });