我正在尝试在 Software AG webMethods 开发 IDE 中使用 jQuery 的控件。现在我正在从以下 URL 导入 jQuery 的脚本:
http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js
当我运行 webMethods IDE 部署的页面时,在多个浏览器中出现以下错误(在两个蓝色箭头之间):
中间的错误是我得到的正常错误(即旁边带有蓝色箭头的错误),因为页面中的其他内容也在使用'$',当 jQuery 也使用它时,它会导致这个其他'$'用户感到困惑,因为这个其他'$'用户可以控制'$'符号..
为了确认这一点,这就是我所做的:
我编写了以下 javascript 代码(不用担心CAF.model
.. 的内部使用。它的.id
函数返回 jQuery 处理所需控件的客户端 ID)
alert($(CAF.model("#{activePageBean.clientIds['txtDateInput']}").id).val());
...并导致上图中显示的另一个“getAttribute”错误..
然后我尝试了:
jQuery.noConflict();
alert(jQuery(CAF.model("#{activePageBean.clientIds['txtDateInput']}").id).val());
而且没有错误..!
另外,如果我使用代码:
jQuery.noConflict();
alert($(CAF.model("#{activePageBean.clientIds['txtDateInput']}").id).val());
它导致底部蓝色箭头错误:因为使用'$'符号的其他实体无法弄清楚函数'val'是什么......
以上向我证实了错误是因为 jQuery 的脚本可能在那里使用 '$' 符号供自己使用..
现在尝试解决这个问题,我尝试在调用 jQuery 自己的脚本文件的脚本块之前添加另一个脚本块,并输入以下代码:
jQuery.noConflict();
这导致了第一个蓝色箭头错误:.. 'jQuery' 没有在文档的早期定义,这是有道理的..
所以基本上,我需要以某种方式告诉主 jQuery 脚本文件也不要使用“$”符号。我该怎么做?