4 回答
TA贡献1802条经验 获得超5个赞
页面上引用的js文件中函数不能执行的原因:找不到函数,会报错或undefined;语法错误;没有引用js文件等。
具体的解决方法:
1、函数应当直接写在页面即可调用;
2、确保有引用js文件,如果引用了的话,也是可以调用的。引用方式,可以直接拖拽(因为路径准确),也可以自己写,引用脚本:<script src="Scripts/JScript.js" type="text/javascript"></script>
3、引用的js文件一定要在调用之前,否则就找不到函数了,会报错或undefined。
调用页面:
123456789 | <script src= "Scripts/JScript.js" type= "text/javascript" ></script> <script type= "text/javascript" > aa(); </script> Script.js中代码: function aa() { alert( "js文件掉用" ); } |
另外:在BS项目中,某个aspx页面需要引用外部:脚本文件,通过在页面head节<script language="" src="">方式引用指定的js之后,仍然无效。
通过alert方式调试,发现是由于js文件编码与js文件内容不符。由于js文件中包含中文注释,所以需要设置js文件为可识别中文的gb2312编码。其方法如下:
在.net中通过这种方式引用js文件<script type="text/javascript" src="setday0.js"></script> 然后在页面中调用setday0.js文件中的方法往往会出错!但是如果把setday0.js文件的内容直接放到该页面中来又一点问题也没有。就在页面中重写js代码。
这个问题是由于.net中的text编码所引起的,需要把setday0.js文件保存为UTF-8或者其他Unicode编码方式,问题就迎刃而解。原来的文本编码为gb2312,因为其中有汉字。
如何进行编码转换?
1、用记事本打开,保存的时候选择Unicode编码;
2、直接在vs中选择另存为,保存按钮右边有个小箭头,点一下,然后选择编码方式再保存就ok。
TA贡献1789条经验 获得超10个赞
有可能是 $ 符号有冲突,你写成
jQuery(document).ready(function(){
window.alert("执行了jquery");
});
试试
TA贡献2051条经验 获得超10个赞
好像有部分浏览器不支持,你试试下面这几种:
$(function(){});
$(window).ready(function(){})
$(document).ready(function(){})
$(document.body).ready(function(){})
TA贡献1869条经验 获得超4个赞
存在的原因:
jsp页面未引入 jquery.js ,导致无法执行
js的顺序不正确,导致无法执行
js的写法不正确,导致无法执行
具体的情况还请贴出代码。
添加回答
举报