Bas*_*sit 21 jquery jquery-plugins jsf-2
我正在学习jQuery.我想在我的jsf 2.0应用程序中使用jQuery.就像我有html文件,我在这里使用jQuery
<head>
<title>The Devil's Dictionary</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" href="css/06.css" type="text/css" />
<script type="text/javascript" src="js/jquery-1.7.1.js"></script>
<script type="text/javascript" src="js/06.js"></script>
</head>
Run Code Online (Sandbox Code Playgroud)
我只是从jQuery官方网站下载了jquery-1.7.1.js文件,将其包含在我的目录中,然后开始使用jQuery.
我的06.js文件conatin代码是这样的
$(document).ready(function() {
$('#letter-a a').click(function(){
/**
* The .load() method does all our heavy lifting for us! We specify the target location for
* the HTML snippet by using a normal jQuery selector, and then pass the URL of the file to
* be loaded as a parameter to the method. Now, when the first link is clicked, the file is
* loaded and placed inside <div id="dictionary">. The browser will render the new HTML as
* soon as it is inserted,
*/
$('#dictionary').load('a.html');
return false;
}); //end of $('#letter-a a').click()
/**
* Occasionally, we don't want to retrieve all the JavaScript we will need when the page is
* first loaded. We might not know what scripts will be necessary until some user interaction
* occurs. We could introduce <script> tags on the fly when they are needed, but a more elegant
* way to inject additional code is to have jQuery load the .js file directly.
*
* Pulling in a script is about as simple as loading an HTML fragment. In this case we use
* the $.getScript() function, which, like its siblings, accepts a URL locating the script
* file, as shown in the following code snippet:
*/
$('#letter-c a').click(function(){
$.getScript('js/c.js');
return false;
}); //end of $('#letter-c a').click(function())
}); //end of $(document).ready(fn)
Run Code Online (Sandbox Code Playgroud)
这是我的html文件代码片段
<html>
<head>
<title>The Devil's Dictionary</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" href="css/06.css" type="text/css" />
<script type="text/javascript" src="js/jquery-1.7.1.js"></script>
<script type="text/javascript" src="js/06.js"></script>
</head>
<body>
<div id="container">
<div class="letters">
<div class="letter" id="letter-a">
<h3><a href="#">A</a></h3>
</div>
<div class="letter" id="letter-b">
<h3><a href="#">B</a></h3>
</div>
<div class="letter" id="letter-c">
<h3><a href="#">C</a></h3>
</div>
</div>
<div id="dictionary">
</div>
</div>
</body>
Run Code Online (Sandbox Code Playgroud)
我想问一下,如果我在JSF2.0上创建相同的页面,那么jQuery将以相同的方式工作,或者我必须下载一些插件以在我的JSF 2.0应用程序中使用jQuery?或者修改我的web.xml中的内容?
谢谢
Mr.*_*mes 34
它的工作方式相同.
JSF将表单的ID附加到表单内的所有输入字段.因此,您需要小心jQuery选择器.例如,假设您有以下形式:
<h:form id="myForm">
<h:inputText id="myInput" />
</h:form>
Run Code Online (Sandbox Code Playgroud)
使用jQuery,您必须将输入引用为: $("#myForm\\:myInput")
一些框架,如PrimeFaces,如果你导入你的jQuery,使用可能无法工作的组件或可能会丢失其皮肤:
<script type="text/javascript" src="js/jquery-1.7.1.js"></script>
Run Code Online (Sandbox Code Playgroud)
相反,你应该通过导入使用他们的内置jQuery库:
<h:outputScript library="primefaces" name="jquery/jquery.js" target="head" />
Run Code Online (Sandbox Code Playgroud)
但是,此jQuery库包含在冲突模式中,这意味着您无法使用$().因此,您可能需要以下附加设置:
<h:outputScript target="head">
$ = jQuery;
// Then you can use it
$(document).ready(function() {
...
});
</h:outputScript>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
53399 次 |
| 最近记录: |