问题是这样的,我有一个asp.net 页面,现在想访问此页面时,页面生成一段文本,但此文本不直接显示在页面上,而是通过一个链接可以访问,页面只显示这个链接,有朋友知道怎么实现吗?
详细描述如下:
现有一页面A,访问A的时候,会根据A的某些控件生成一段xml,同时在A上生成一个链接<a href="link"></a> link指向*.xml,xml内容是刚才生成的xml,不知道这样描述清楚了吗?
看到有朋友回答,十分感谢,不过和我需要的有些出入,再把问题描述清楚一些,就是在页面上生成一个Url链接,比如<a href="url"></a>
其中url是页面自己生成的内容,不是一个已经存在的文件,页面关闭之后,url地址就不存在了
不知道有没有朋友用过Ext.Net 在Ext.Net中的ResourceManager有一个InitScriptMode属性,如果这个设为Linked,那么Ext.Net生成的脚本是以外链形式嵌入,否则以页面脚本嵌入,我想实现同样的功能,只是把脚本换成其他内容!
访问页面时,生成一个GUID放在session里,并把它作为链接的参数,显示链页面生成内容前比对下session里有没有这个GUID,有才生成内容。
A页面: string LinkId=Guid.NewGuid().ToString(); Session["linkId"]=LinkId; <a href="B.aspx?linkId=<%=LinkId%>">B页面</a> B页面: if(Session["linkId"]!=null && Request["linkId"]==Session["linkId"].ToString()){ 生成内容... Session["linkId"]=null;//如果只想显示一次,不过一般都是在session有效期内可以访问。 }
这样需要存在一个B页面,实际上我想让B页面不存在,B就是动态生成的一段内容,比如一段xml或者一段json数据
@日食:
B不是一个页面啊,B代表你生成内容的处理程序。
@向往-SONG: 打算按照您提供的思路去尝试,谢谢回答!
$(function(){
$("<a href='' >文字</a>").appendTo($("body"));
});
你的意思是动态生成内容然后点击一个link显示出来是不是?
是的,不过link需要是单独页面显示,不是在当前页面弹出
@日食: 那你想要的功能就是进入页面的同时,生成一个指定内容的文件,文件可以保存到项目中的某一个路径下,同时页面生成一个访问这个页面的link. 这个没有任何技术上的难点,唯一的难点是页面关闭之后url不存在(即这个生成的页面要删除),这点不能做到,因为关闭页面的情况很多,比如:电脑突然关机,所以可以换种方法:比如做一个job,定时清理这些生成的文件
我觉得他的饿意思其实是, 点一下内容就显示出来出来 ,用js+css 不好了么
用js控制div的显示与隐藏,原理在页面上生成一个a标签,和一个隐藏的div,div里面存放内容,然后a标签的点击事件中控制div的显示
你想让一个链接连到你在页面生成的一段存在但不显示的文字上面?
如果是@田林九村 说的是你想要的需求的话,URL访问一次也不难实现:
1,请求的时候生成一个你指定内容的文件abc,内容的访问形式则可以是xxhandler.ashx?filename=abc
2,在handler里面的逻辑是,判断文件存在,如果存在则读取文件内容,写到response.write去,然后删除文件。临时文件不存在就没事了,直接返回。
自然这里的文件可以是其他形式的变量保存形式。