首先,说明一下,$(document).ready 中使用传值的function是没有问题的,但是这样做出了一个奇怪的问题,所以在这里贴出来,请高手解决一下。
为了能传入系统的路径,所以在我的exportTemplate.js 文件中定义了,一个总的方法是readyInit.然后我在自己的jsp文件中调用该方法如下:
[code="javascript"]
<script type="text/javascript">
$(document).ready(readyInit("<%=path %>"));
</script>
[/code]
这样就看似乎传的值 用alert也能打印,但是问题是在exportTemplate.js 有这样
var select2 = document.getElementById("select2");
通过document.getElementById()方法得到的值都是null。
不知道为何,于是自己修改为不传值的形式:
[code="javascript"]
<script type="text/javascript">
$(document).ready(readyInit);
</script>
[/code]
这样使用的话就没有这个问题了 document.getElementById()方法得到的值 都是正常的了。
但是感觉自己传值的问题还是没有解决,于是想请教!
另外奇怪的是,就算是不传值,自己如果写成:
[code="javascript"]
<script type="text/javascript">
$(document).ready(readyInit());
</script>
[/code]
就只是在方法的调用中写了一个()结果是:
通过document.getElementById()方法得到的还都是null。
不理解JavaScript关于这方面的机制,忘解答。