ASP.NET查询页面设置form的action属性只弹出一个页面,并且每次将页面设置到最前

简介: 原文:ASP.NET查询页面设置form的action属性只弹出一个页面,并且每次将页面设置到最前背景 当数据量大、查询条件复杂,多样多的时候,我们可能需要单独做一个查询界面,当用户选择设置了相关的查询条件后,点击【查询】按钮,系统就弹出一个新的页面展示出根据条件查询出的数据集。
原文: ASP.NET查询页面设置form的action属性只弹出一个页面,并且每次将页面设置到最前

背景

当数据量大、查询条件复杂,多样多的时候,我们可能需要单独做一个查询界面,当用户选择设置了相关的查询条件后,点击【查询】按钮,系统就弹出一个新的页面展示出根据条件查询出的数据集。

然后,用户每点【查询】按钮就弹出一个新的页面展示出最新的查询结果。

当然,在较好的用户体验下,我认为不管用户点击了多少次【查询】按钮,系统应该只弹出并有且只有一个页面,这个页面就是展示查询结果的页面了。并且这页面还应该显示在窗口的最前面,如果用户使用选项卡浏览器就以闪烁的形式提示用户当前的查询结果已更新到最新。

 

解决方法

 

大家知道,在asp.net中直接设置form的action是没有效果的,或者当产生postback的时候可能会有一些意外的事情发生。如:

<form id="form1" runat="server" action="searchresult.aspx" >

 

好,现在我们只能通过javascript动态的设置form的action以及target属性了,具体如下代码:

function FormSubmit(){
var action = $('#form1').attr('action');
var target = $('#form1').attr('target');
$(
'#form1').attr('action','RetireeInfoSearchResult.aspx');
$(
'#form1').attr('target','RetireeInfoSearchResult.aspx');
var d = $('#form1').submit();
//alert(d);
$('#form1').attr('action',action);
$(
'#form1').attr('target',target);
return false;
}

 

当点击【查询】按钮时,就触发FormSubmit方法,通过FormSubmit方法先保存form的属性,然后再设置form的action以及target属性,将target设置为查询结果的页面路径,这样可以保存永远只弹出一个页面,而不是多个页面。最后form表单提交后,将form的属性还原。

 

保证查询结果显示在最前面或者提示用户

在查询结果页面中,向body加入onload事件,具体如下:

<body onload="self.focus();">

这样就可以保证,当页面加载的时候焦点就在查询结果页面上。

 

 

目录
相关文章
|
SQL 数据库 C#
C# .NET面试系列十一:数据库SQL查询(附建表语句)
#### 第1题 用一条 SQL 语句 查询出每门课都大于80 分的学生姓名 建表语句: ```sql create table tableA ( name varchar(10), kecheng varchar(10), fenshu int(11) ) DEFAULT CHARSET = 'utf8'; ``` 插入数据 ```sql insert into tableA values ('张三', '语文', 81); insert into tableA values ('张三', '数学', 75); insert into tableA values ('李四',
285 2
C# .NET面试系列十一:数据库SQL查询(附建表语句)
|
开发框架 JavaScript .NET
asp.net中条件查询+分页
asp.net中条件查询+分页
|
SQL 开发框架 .NET
|
开发框架 JavaScript 前端开发
揭秘:如何让你的asp.net页面变身交互魔术师——先施展JavaScript咒语,再引发服务器端魔法!
【8月更文挑战第16天】在ASP.NET开发中,处理客户端与服务器交互时,常需先执行客户端验证再提交数据。传统上使用ASP.NET Button控件直接触发服务器事件,但难以插入客户端逻辑。本文对比此法与改进方案:利用HTML按钮及JavaScript手动控制表单提交。后者通过`onclick`事件调用JavaScript函数`SubmitForm()`来检查输入并决定是否提交,增强了灵活性和用户体验,同时确保了服务器端逻辑的执行。
187 5
|
开发框架 .NET 中间件
七天.NET 8操作SQLite入门到实战 - (2)第七天Blazor班级管理页面编写和接口对接
七天.NET 8操作SQLite入门到实战 - (2)第七天Blazor班级管理页面编写和接口对接
332 7
|
开发框架 前端开发 .NET
七天.NET 8操作SQLite入门到实战 - (3)第七天Blazor学生管理页面编写和接口对接
七天.NET 8操作SQLite入门到实战 - (3)第七天Blazor学生管理页面编写和接口对接
198 1
|
开发框架 前端开发 算法
分享 .NET EF6 查询并返回树形结构数据的 2 个思路和具体实现方法
分享 .NET EF6 查询并返回树形结构数据的 2 个思路和具体实现方法
220 0
|
开发框架 前端开发 .NET
分享一个 ASP.NET WebForm 使用 Form Authentication 的例子
分享一个 ASP.NET WebForm 使用 Form Authentication 的例子
164 0
|
开发框架 前端开发 安全
ASP.NET MVC 如何使用 Form Authentication?
ASP.NET MVC 如何使用 Form Authentication?
350 0
|
开发框架 JavaScript .NET
Vue与ASP.NET Core Web Api设置localhost与本地ip地址皆可访问
Vue与ASP.NET Core Web Api设置localhost与本地ip地址皆可访问
246 0