self.location得到的值为什么不是字符串型?

lihaitaoami 2002-01-28 06:21:08
function GoToPageNumber()//跳转到指定页
{
var PageNumber=document.mainForm.PageNumber.value.toLowerCase();
var CurPageNumber=document.hidForm.hidCurPageNumber.vlaue;
var tmpurl=self.location;
//假设location为"http://abc.net/forum.asp"
if (tmpurl=="http://abc.net/forum.asp") {经过判断证明确实相等}
// 但是 window.location=tmpurl.replace("?room","?abcde");却报错,变量未定义
如果写成window.location="http://abc.net/forum.asp".replace("?room","?abcde");则正常。

}
到现在仍然搞不懂为什么会这样,两个一样的字符串为什么进行replace操作得到两个不同的结果?请高人指教。
...全文
99 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
julyclyde 2002-01-29
  • 打赏
  • 举报
回复
window.location=tmpurl.replace("?room","?abcde");
这一句是什么意思呢?你到底是要给location一个新值还是要给tmpurl进行replace?
tripofdream 2002-01-29
  • 打赏
  • 举报
回复
href是location对象的默认属性,当将一个对象跟一个字符串进行运算时,程序会自动用对象的默认属性(如果有的话)来进行运算,这类似于隐式类型转换.
lihaitaoami 2002-01-29
  • 打赏
  • 举报
回复
我是要对location进行处理,重新装载页面。比如把?room=1改成?room=3
lihaitaoami 2002-01-29
  • 打赏
  • 举报
回复
搞定了,self.location+""就可以强制转换了。
但不明白的是何以self.location=="XXX"能够判断成功?
SimonDW 2002-01-28
  • 打赏
  • 举报
回复
改成:
tmpurl.href.replace
location是个对象……

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧