javascript - 如何更改 "parent"帧的 URL?

标签 javascript asp.net iis url-rewriting frames

我有一个自己托管的网站。我没有静态 IP 地址,所以我的域的所有流量都通过屏蔽转发到我的 DDNS 帐户。生成的页面如下所示...

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
   "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
  <title>mydomianname.com</title>
</head>
<frameset rows="100%,*" border="0">
  <frame src="http://myddns.dyndns.org/mydomainname" frameborder="0" />
  <frame frameborder="0" noresize />
</frameset>
</html>

当用户在“子”框架内导航时,如何更新“父”框架的 URL?

更新:成功了吗?

我曾尝试使用 javascript 执行此操作,但在为我的 javascript 函数获取正确的 href 时遇到了问题,并且没有产生不利的副作用(打开两个窗口,让我的主窗口出错)位置,或使后退按钮无法正常工作)。我所需要的只是我的 a 标签的一个属性来保存我可以在我的 javascript 中使用的值,但不会做任何其他事情。添加属性 value 事件虽然它不是 a 标记的 native 属性,但效果很好。

a 标签...

<a onclick="url_update(this);" value="test/test.html" href="javascript:void(0);">test link</a>

和 javascript 函数...

function url_update(element){
    base_url = 'http://mydomain.com/';
    window.parent.location.href = base_url + element.getAttribute('value');
}

更新后的 URL 是...

http://mydomain.com/test/test.html

...并且没有前面提到的任何副作用。

我想修复的唯一“副作用”是在浏览器窗口底部的信息栏中显示链接。现在它显示 javascript:void( 0); 因为那是写在我的 href 属性中的内容,但我希望它在链接悬停时显示更新的 URL...有什么想法吗?

如果我可以废弃所有这些 javascript 并使用 IIS 7 URL Rewrite 2.0 来代替,那就更好了……但我还没有掌握 URL 重写的魔法。

最佳答案

JavaScript:

window.top.location = 'anther url'

--更新您更新的问题

使用 element.getAttribute('value') 代替 element.value

--更新 #2 使用 href 属性,但是,将 return false; 添加到 onclick 函数:

<a onclick="url_update(this);return false;" value="test/test.html" href="test/test.html">test link</a>

一旦你这样做了,你也可以跳过 value 属性并只使用 href 属性,更新你的 url_update 函数以使用 element.href 而不是 element.value

关于javascript - 如何更改 "parent"帧的 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4361479/

相关文章:

IIS 7.5 + 为 RESTFul 服务启用 PUT 和 DELETE,无扩展

javascript - 如何使用 webkitdirectory 获取目录大小、HTML5 文件 api

javascript - 哪些 Bootstrap css 和 javascript 文件应该链接到我们的 html 页面?

asp.net - 如何使用百分比设置内容页面中 div 的高度?

c# - 如何使用 ASP .NET 创建对话框消息框?

c++ - 来自 ISAPI 扩展的清空 _ASSERTE 对话框

javascript - 是否可以使用 Isotope 对列进行排序? (jQuery 库)

javascript - Bootstrap 轮播页面指示器错误对齐

c# - 导致索引和长度错误的子串

php - Windows IIS 8.5新网站权限被拒绝