我有一个带有以下coffeescript jquery代码的应用程序来执行一些ajax调用:
$('#records-filter-date').submit ->
$.get(@.action, $(@).serialize(), null,'script')
return false
$('#records-delete').submit ->
$.post(@.action, $(@).serialize(), (data)->
$('.check-for-delete:checked').parent().parent().hide(600,'swing')
$('#alert-div').html("<div class='alert alert-success '><button class='close' data-dismiss='alert' type='button'>x</button><div id='flash_notice'>"+data+ " record(s) successfully deleted!</div></div>")
$.get('#records-filter-date'.action, $('#records-filter-date').serialize(), null,'script')
,'text')
return false
现在该页面列出了某些记录。第一个调用是通过 ajax 提交搜索字段。第二个是删除选定的记录(使用复选框)。现在我可以删除记录并重定向到列出记录的操作,但搜索参数将丢失(如果用户在删除记录之前过滤了记录),他们将不得不再次过滤记录。
所以我所做的是在删除被称为成功之后,我调用了在搜索字段中提交日期并考虑更新记录。
但是......当没有搜索参数时(当没有搜索完成时)删除工作很好。但是当我进行搜索然后我进行删除时......请求被处理为普通的http请求......
无论如何要维护搜索参数?还是我需要做任何事情来解决这个问题?
编辑:提交要删除的记录的表单在搜索调用更新的 div 内。是否会在更新 div 时破坏与 ajax 调用的绑定?