如何在Session变量中获取锚文本?
我正在开发一个项目,我在主页面中链接了许多pdf文件。点击锚点,页面重定向到指定的页面,并在iframe中显示pdf.Now我希望在页面上显示锚标记中的文本pdf打开的地方。 考虑我有一个看起来像这样的锚:
<a href="https://stackoverflow.com/questions/37129415/how-to-get-anchor-text-in-a-session-variable/Main_Content.aspx?open=Departments/HR/NewsLetter/newsletter_dec_2014.pdf">News Letter
现在我想在重定向的页面上显示文本“新闻信”。 我想我可以通过在会话变量中保存文本来实现这一点。但是如何在没有为锚标记指定任何id或类的情况下将锚文本保存在Session变量中? 有人可以帮我吗?
你可以试试这个
$("a").click(function (e) { if($(this).attr("href").match(".pdf$")) { window.location.href = $(this).attr("href") + "&title=" + $(this).text(); e.preventDefault(); } });
在“Main_Content.aspx”中的服务器端
strTitle = Request.QueryString["title"];
你可能正在寻找QueryString而不是session,你已经在QueryString中传递路径,也传递了锚文本。 您需要在创建锚标记时将其添加到url。
Main_Content.aspx?open=Departments/HR/NewsLetter/newsletter_dec_2014.pdf&aText=News Letter">News Letter
在服务器端
lblForAnchor.Text = Request.QueryString["aText"].ToString();
编辑您在创建查询字符串时无法更改它,然后您可以在document.ready
中的DOM中加载它时更改它。 将一个类分配给您的锚点是特定的。
$( 'a.someclass' ).attr( 'href', function(index, value) { return value + '&aText=' + $(this).text(); });
在点击锚点时执行此操作的其他方法。
$( 'a.someclass' ),click(function(event) { window.location.href = this.href + '&aText=' + $(this).text(); });
您可以使用javascript动态编写内容:
News Letter
使用Javascript:
或者使用URL调用不同的地址并测试作为参数,并在服务器端生成文档。
我不确定链接点击会如何表现,但它可能值得一试。
链接不应该被修改。