js 火狐不兼容的问题

head区域:<scriptlanguage="JavaScript"type="text/javascript">functionlog(n){document.scr... head区域:
<script language="JavaScript" type="text/javascript">
function log(n){
document.scripts[1].src = "L.asp?fun=" + n;
}
function chkGN()
{
document.scripts[1].src = "L.asp?fun=2&name=" + myform.name.value + "&pass=" +myform.password.value + "&autoload=" +myform.autoload.value;
}
</script>
body区域:
<div class="login" ID="login"></div><script language="JavaScript" type="text/javascript">log(1);</script>
l.asp区域:
<%
select case request("fun")
case 1:show
end select

function show()
str="document.getElementById('login').innerHTML = """
str = str & "<form name='myform'>"
str = str & "通行证 <input type='text' id='name' name='name'>"
str = str & " 密码 <input type='password' id='password' name='password' >"
str = str & "<input name='autoload' id='autoload' type='checkbox' value='1'>"
str = str & " <input onclick='javascript:chkGN();' type='button'>"
str = str & " <a href='#'>忘记密码</a>"
str = str & " <a href='#'>注册</a>"
str = str & "</form>"
end if
str = str & """;"
response.write str
end function

IE下没问题,火狐下不显示。。求教
展开
 我来答
无心北京
2011-12-23 · 超过17用户采纳过TA的回答
知道答主
回答量:49
采纳率:0%
帮助的人:45.9万
展开全部
myform.name.value ,
myform.password.value ,
myform.autoload.value
这样写 js在火狐下是不兼容的。

你可以改成 document.forms[0].forms[0].name.value , document.forms[0].password.value , document.forms[0].autoload.value 这样获取值。
但我是不建议用这个种方式去做。不容易扩展。如果你页面中在多一个form的时候,你的forms[0]就会出问题。
建议你用id去获取值:
document.getElementById("name").value;
document.getElementById("password").value;
document.getElementById("autoload").value;
如果你想要实现无刷新提交,建议你用Ajax去实现。
追问
的确是想做无刷新登录,但做了以后不记录登录状态,页面F5以后要重新登录。。。比较菜,不知道如何解决。。。不知道您有成熟的源码能提供否。。harz424@qq.com
kekee000
推荐于2016-02-10 · TA获得超过154个赞
知道小有建树答主
回答量:158
采纳率:0%
帮助的人:122万
展开全部
document.scripts.src 火狐不兼容,可以将函数改为这样:
function log(n){
var createScript = document.createElement('script');
createScript.src = "L.asp?fun=" + n;
document.getElementsByTagName('head')[0].appendChild(createScript);
}
更多追问追答
追问
麻烦请问可否对整个代码帮我进行一下修改,我修改了以后但没法点登录,登录无效。。。感激不尽
追答
function log(n){
var createScript = document.createElement('script');
createScript.src = "L.asp?fun=" + n;
document.getElementsByTagName('head')[0].appendChild(createScript);
}
function chkGN()
{
var createScript = document.createElement('script');
createScript.src = "L.asp?fun=2&name=" + document.forms[0].name.value + "&pass=" +document.forms[0].password.value + "&autoload=" +document.forms[0].autoload.value;
document.getElementsByTagName('head')[0].appendChild(createScript);
}
其他不变,在火狐、ie、chrome中测试通过。

这样做不是太好,如果想做无刷新登录的话,最好使用Ajax,安全又方便。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
火狐
2014-05-12 · Firefox,最快最安全的上网体验
火狐
Mozilla Firefox火狐浏览器,是一款开放安全的开源浏览器,全球拥有5亿用户。
向TA提问
展开全部
  您好!很高兴为您答疑!

  火狐下您可以安装Firebug,检查页面代码,它集HTML查看和编辑、Javascript控制台、网络状况监视器于一体,是开发JavaScript、CSS、HTML和Ajax的得力助手。
  您可以在火狐社区了解更多内容。希望我的回答对您有所帮助,如有疑问,欢迎继续在本平台咨询。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式