跨页面传值有哪些方法,四种跨页面传值方式有何差异,各自使用于什么情况

互联网 2024-05-21 阅读

大家好,今天来和大家分享一下有关跨页面传值有哪些方法的问题,我们知道很多人对此还不太了解,同样的四种跨页面传值方式有何差异,各自使用于什么情况也是如此,我们今天就一起来探讨一下这两个问题吧!如果我的分享可以帮助到你,希望大家能够继续关注我们的网站,我们会持续为大家提供更多信息和帮助,谢谢大家!

跨页面传值有哪些方法,四种跨页面传值方式有何差异,各自使用于什么情况

Axure9如何利用全局变量实现跨页面传值

当我们使用Axure进行原型设计时,在同一个页面上单击不同的按钮来显示不同的内容,这可以通过动态面板来实现。如果你想在a页面点击不同的按钮,你想如何在B页面显示不同的内容?下面就来教你Axure9如何利用全局变量实现跨页面传值!对于准备自学或者正在自学Axure的小伙伴,那么我建议你学习体验的Axure自学视频课,0基础到案例实操,全面学习~

Axure9利用全局变量实现跨页面传值方法:

一、交互效果说明

点击「首页」金刚区的按钮,跳转至「分类」页面,选中对应的Tab选项,切换显示对应的内容。

效果预览:

二、交互效果制作

1.创建两个页面,分别命名为「首页」和「分类」。

2.在「首页」中拖入一个圆形和一个文本标签,设置好颜色和文本,右键设置为组合,命名为【人文-Botton】,再复制出4个完全相同的组合,分别进行命名和设置,页面其他内容可自定义。

3.在「分类」页面中拖入一个矩形,设置文本内容为“人文”,将其命名为「人文-Tab」;在右侧【交互】面板中给其添加【元件选中的样式】图所示,设置选项组名称为「Tab组」。

4.给文本标签「人文-Tab」添加【鼠标单击时】【选中当前元件】的交互。

5.设置完成后,再复制出四个相同文本标签分别命名和设置文本内容,这样Tab就制作完成了。

6.制作出「分类」页面的内容部分,内容可自定义,制作好后选中内容右键转化为动态面板,再复制出4个状态,分别进行命名。

7.给「Tab组」的5个文本标签分别添加【选中】时的交互,切换到【内容】面板的对应状态。

接下来我们需要通过设置全局变量来储存我们的数据,在「首页」中点击按钮给全局变量赋值,然后在「分类」页面中载入时通过判断全局变量的值,显示不同的面板状态。

8.点击顶部菜单【项目】-【全局变量设置】,添加一个全局变量,命名为「BottonVariable」,默认值为空。

9.接下来分别给金刚区的5个按钮组合添加【鼠标单击时】的交互,分别【设置变量值】为「renwen」「lishi」「sheke」「yishu」「yinyue」;均设置【跳转链接】至「分类」页面。

这里需要保证在载入「分类」页面前已经赋值成功,所以设置变量值的交互要在跳转链接之前。

10.在「分类」中添加【页面载入时】的交互,分别添加情形及对应的选中效果,如下:

【变量值】「BottonVariable」为【renwen】时,设置动作为【选中】矩形元件「人文—Tab」;

【变量值】「BottonVariable」为【lishi】时,设置动作为【选中】矩形元件「人文—Tab」;

【变量值】「BottonVariable」为【sheke】时,设置动作为【选中】矩形元件「社科—Tab」;

【变量值】「BottonVariable」为【yishu】时,设置动作为【选中】矩形元件「艺术—Tab」;

【变量值】「BottonVariable」为【yinyue】时,设置动作为【选中】矩形元件「音乐—Tab」。

做完这一步,就完成整个效果了

以上就是关于“Axure9如何利用全局变量实现跨页面传值?”的全部精彩内容分享了,希望你能从中有所收获哦!如果觉得一篇文章不够尽兴,那么Axure相关文章可别错过!总而言之,学习道路,单一知识是很难成就自我全面发展的!想要全面精通擅长一个技能,那么学习也得全面!来,全面学习Axure,综合获取知识点,快速有效促成独立自主原型设计~

以上就是本文的全部内容,希望对大家的学习有所帮助,。

-->

四种跨页面传值方式有何差异,各自使用于什么情况

不同的页面间传值使用很普遍,非常重要,传值方式有四种分别是cookie,session,sendRedirect和超链接,隐藏表单

1.cookie主要用于记录用户的一些信息,例如记录用户的登录信息使用户一段时间内不用登录,它有服务器创建,并放在客户端(用户登录时的电脑上(一般可以在浏览器工具——》Internet选项——》点击第一个设置——》查看文件在这里可以找到上网的记录,包括一些小的视频和cookie,从这一点来看cookie并不安全,可以在cookie看到密码)),当使用时,服务器就会从电脑上获取,然后验证,一个用户有一个cookie,而且cookie的存在时间不受任何影响,关机都不会影响cookie。

2.session是存放在服务器端的数据,每当双击打开浏览器时就会有一个session,也就是说每一个浏览器一个session,session的使用时间是受使用影响的,当关机时候session就不会再存在,当session没有到期时如果使用,session就会重新计时。可以用于判断用户的合法(是否通过用户名,密码登陆的),传递用户名(sendRedirect是明文传值,值会再地址栏显示出来,不能用于传重要数据,例如密码),jsp页面的session与servlet中的session是共用的。

3.sendRedirect或超链接是转向某页面并可以传值例如res.sendRedirect("logincl?username="+name1+"&psw="+pass1);在转向的页面通过下面的语句获取值

String u= req.getParameter("username");String p= req.getParameter("psw");

超级链接:("<a href=welcome?pagenow="+ i+">"+ i+"</a>");

接收值:String pagenow= req.getParameter("pagenow");

可以用于传错误信息等保密性不是很强的信息

4.隐藏表单

pw.println("<input type=hidden name=sex value=男<br>");

在转向的页面可以用下面的语句接收

String s=req.getParameter("sex");

ASP.NET跨页面传值技巧总结

关于页面传值的方法,引发了很多讨论。看来有很多人关注这个,我就我个人观点做了些总结,希望对大家有所帮助。

1.使用QueryString变量

QueryString是一种非常简单的传值方式,他可以将传送的值显示在浏览器的地址栏中。如果是传递一个或多个安全性要求不高或是结构简单的数值时,可以使用这个方法。但是对于传递数组或对象的话,就不能用这个方法了。下面是一个例子:

a.aspx的C#代码

private void Button1_Click(object sender, System.EventArgs e)

{

string s_url;

s_url="b.aspx?name="+ Label1.Text;

Response.Redirect(s_url);

}

b.aspx中C#代码

private void Page_Load(object sender, EventArgs e)

{

Label2.Text= Request.QueryString["name"];

}

2.使用Application对象变量

Application对象的作用范围是整个全局,也就是说对所有用户都有效。其常用的方法用Lock和UnLock。

a.aspx的C#代码

private void Button1_Click(object sender, System.EventArgs e)

{

Application["name"]= Label1.Text;

Server.Transfer("b.aspx");

}

b.aspx中C#代码

private void Page_Load(object sender, EventArgs e)

{

string name;

Application.Lock();

name= Application["name"].ToString();

Application.UnLock();

}

3.使用Session变量

想必这个肯定是大家使用中最常见的用法了,其操作与Application类似,作用于用户个人,所以,过量的存储会导致服务器内存资源的耗尽。

a.aspx的C#代码

private void Button1_Click(object sender, System.EventArgs e)

{

Session["name"]= Label.Text;

}

b.aspx中C#代码

private void Page_Load(object sender, EventArgs e)

{

string name;

name= Session["name"].ToString();

}

4.使用Cookie对象变量

这个也是大家常使用的方法,与Session一样,其是什对每一个用户而言的,但是有个本质的区别,即Cookie是存放在客户端的,而session是存放在服务器端的。而且Cookie的使用要配合内置对象Request来使用。

a.aspx的C#代码

private void Button1_Click(object sender, System.EventArgs e)

{

HttpCookie cookie_name= new HttpCookie("name");

cookie_name.Value= Label1.Text;

Reponse.AppendCookie(cookie_name);

Server.Transfer("b.aspx");

}

b.aspx中C#代码

private void Page_Load(object sender, EventArgs e)

{

string name;

name= Request.Cookie["name"].Value.ToString();

}

5.使用Server.Transfer方法

这个才可以说是面象对象开发所使用的方法,其使用Server.Transfer方法把流程从当前页面引导到另一个页面中,新的页面使用前一个页面的应答流,所以这个方法是完全面象对象的,简洁有效。

a.aspx的C#代码

public string Name

{

get{ return Label1.Text;}

}

private void Button1_Click(object sender, System.EventArgs e)

{

Server.Transfer("b.aspx");

}

b.aspx中C#代码

private void Page_Load(object sender, EventArgs e)

{

a newWeb;//实例a窗体

newWeb=(source)Context.Handler;

string name;

name= newWeb.Name;

}

传值方法比较多

我在添加一个

Cross-Page Posting

定位至于源网页位于相同的应用程序的网页,可以读取源网页的值和公共属性,但是不要按浏览器中的重新整理和上一步,这样会照成无法预期的效果

eg:

aspx

您的名字:

Text="传送" OnClick="btn_name_Click"/

cs:

TextBox name=(TextBox)PreviousPage.FindControl("name");//非public成员

Label1.Text="欢迎你:"+ name.Text;

previouspage本身属于page类,并且只有在来源网页和目标网页属于同一个asp.net应用程序下的时候才能引用,如果网页不是跨网页公布的目标,或者是网页在不同的应用程序之中,就不会初始化previouspage属性,就不能使用previouspage来存取任何信息

获得网页的公共属性:

source.cs:

public string UserName

{

get{return aa.text;}

}

cross-page posting.aspx:

cross-page posting.cs:

lab.text= previousopage.username;

//一个网页中只能指示一个previousPage,不然出出现编译错误

本站所有文章资源内容,如无特殊说明或标注,均为网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

跨境电商营销手段有哪些,跨境电商商铺营销方案

路基填筑施工计划怎么写,路堤填筑试验段施工方案