亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 值變事件.htm

?? 良葛格學習筆記,《jsf入門》簡體中文版,對學習JSF有幫助
?? HTM
字號:
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>新建網頁 1</title>
</head>

<body>

<p>值變事件</p>
<div id="PageContent">
	<table cellSpacing="0" cellPadding="0" width="100%" border="0" id="table3">
		<tr>
			<td class="pagebody" vAlign="top">
			<table style="CLEAR: both" cellSpacing="0" cellPadding="0" width="100%" border="0" id="table4">
				<tr>
					<td class="pagecontent" vAlign="top" width="100%">
					<div class="wiki-content">
						如果使用者改變了JSF輸入組件的值后送出窗體,就會發生值變事件(Value Change
						Event),這會丟出一個javax.faces.event.ValueChangeEvent對象,如果您想要處理這個事件,有兩種方式,一是直接設定JSF輸入組件的valueChangeListener屬性,例如:<div class="code" style="BORDER-TOP-STYLE: solid; BORDER-RIGHT-STYLE: solid; BORDER-LEFT-STYLE: solid; BORDER-BOTTOM-STYLE: solid">
							<div class="codeContent">
								<pre class="code-java">&lt;h:selectOneMenu value=<span class="code-quote">&quot;#{user.locale}&quot;</span>
                  onchange=<span class="code-quote">&quot;<span class="code-keyword">this</span>.form.submit();&quot;</span>
                  valueChangeListener=<span class="code-quote">&quot;#{user.changeLocale}&quot;</span>&gt;

     &lt;f:selectItem itemValue=<span class="code-quote">&quot;zh_TW&quot;</span> itemLabel=<span class="code-quote">&quot;Chinese&quot;</span>/&gt;
     &lt;f:selectItem itemValue=<span class="code-quote">&quot;en&quot;</span> itemLabel=<span class="code-quote">&quot;English&quot;</span>/&gt;
 &lt;/h:selectOneMenu&gt;</pre>
							</div>
						</div>
						<p>
						  為了仿真GUI中選擇了選單項目之后就立即發生反應,我們在onchange屬性中使用了JavaScript,其作用是在選項項目發生改變之后,立即送出窗體,而不用按下提交按鈕;而valueChangeListener屬性所綁定的user.changeLocale方法必須接受ValueChangeEvent對象,例如:</p>
						<div class="code" style="BORDER-TOP-STYLE: solid; BORDER-RIGHT-STYLE: solid; BORDER-LEFT-STYLE: solid; BORDER-BOTTOM-STYLE: solid">
							<div class="codeHeader" style="BORDER-BOTTOM-STYLE: solid">
								<b>UserBean.java</b></div>
							<div class="codeContent">
								<pre class="code-java"><span class="code-keyword">package</span> onlyfun.caterpillar;

 <span class="code-keyword">import</span> javax.faces.event.ValueChangeEvent;

 <span class="code-keyword">public</span> class UserBean {
    <span class="code-keyword">private</span> <span class="code-object">String</span> locale = <span class="code-quote">&quot;en&quot;</span>;
    <span class="code-keyword">private</span> <span class="code-object">String</span> name;
    <span class="code-keyword">private</span> <span class="code-object">String</span> password;
    <span class="code-keyword">private</span> <span class="code-object">String</span> errMessage;

    <span class="code-keyword">public</span> void changeLocale(ValueChangeEvent event) {
        <span class="code-keyword">if</span>(locale.equals(<span class="code-quote">&quot;en&quot;</span>))
            locale = <span class="code-quote">&quot;zh_TW&quot;</span>;
        <span class="code-keyword">else</span>
            locale = <span class="code-quote">&quot;en&quot;</span>;
    }

    <span class="code-keyword">public</span> void setLocale(<span class="code-object">String</span> locale) {
        <span class="code-keyword">this</span>.locale = locale;
    }

    <span class="code-keyword">public</span> <span class="code-object">String</span> getLocale() {
        <span class="code-keyword">if</span> (locale == <span class="code-keyword">null</span>) {
            locale = <span class="code-quote">&quot;en&quot;</span>;
        }
        <span class="code-keyword">return</span> locale;
    }

    <span class="code-keyword">public</span> void setName(<span class="code-object">String</span> name) {
        <span class="code-keyword">this</span>.name = name;
    }

    <span class="code-keyword">public</span> <span class="code-object">String</span> getName() {
        <span class="code-keyword">return</span> name;
    }

    <span class="code-keyword">public</span> void setPassword(<span class="code-object">String</span> password) {
        <span class="code-keyword">this</span>.password = password;
    }

    <span class="code-keyword">public</span> <span class="code-object">String</span> getPassword() {
        <span class="code-keyword">return</span> password;
    }

    <span class="code-keyword">public</span> void setErrMessage(<span class="code-object">String</span> errMessage) {
        <span class="code-keyword">this</span>.errMessage = errMessage;
    }

    <span class="code-keyword">public</span> <span class="code-object">String</span> getErrMessage() {
        <span class="code-keyword">return</span> errMessage;
    }

    <span class="code-keyword">public</span> <span class="code-object">String</span> verify() {
        <span class="code-keyword">if</span>(!name.equals(<span class="code-quote">&quot;justin&quot;</span>) ||
           !password.equals(<span class="code-quote">&quot;123456&quot;</span>)) {
            errMessage = <span class="code-quote">&quot;名稱或密碼錯誤&quot;</span>;
            <span class="code-keyword">return</span> <span class="code-quote">&quot;failure&quot;</span>;
        }
        <span class="code-keyword">else</span> {
            <span class="code-keyword">return</span> <span class="code-quote">&quot;success&quot;</span>;
        }
    }
 }</pre>
							</div>
						</div>
						<p>
						  另一個方法是實作javax.faces.event.ValueChangeListener接口,并定義其processValueChange()方法,例如:</p>
						<div class="code" style="BORDER-TOP-STYLE: solid; BORDER-RIGHT-STYLE: solid; BORDER-LEFT-STYLE: solid; BORDER-BOTTOM-STYLE: solid">
							<div class="codeHeader" style="BORDER-BOTTOM-STYLE: solid">
								<b>SomeListener.java</b></div>
							<div class="codeContent">
								<pre class="code-java"><span class="code-keyword">package</span> onlyfun.caterpillar;
 ....
 <span class="code-keyword">public</span> class SomeListener <span class="code-keyword">implements</span> ValueChangeListener {
    <span class="code-keyword">public</span> void processValueChange(ValueChangeEvent event) {
        ....
    }
    ....
 }


  然后在JSF頁面上使用&lt;f:valueChangeListener&gt;卷標,并設定其type屬性,例如:

{code:borderStyle=solid}
 &lt;h:selectOneMenu value=<span class="code-quote">&quot;#{user.locale}&quot;</span>
                  onchange=<span class="code-quote">&quot;<span class="code-keyword">this</span>.form.submit();&quot;</span>&gt;
     &lt;f:valueChangeListener
              type=<span class="code-quote">&quot;onlyfun.caterpillar.SomeListener&quot;</span>/&gt;
     &lt;f:selectItem itemValue=<span class="code-quote">&quot;zh_TW&quot;</span> itemLabel=<span class="code-quote">&quot;Chinese&quot;</span>/&gt;
     &lt;f:selectItem itemValue=<span class="code-quote">&quot;en&quot;</span> itemLabel=<span class="code-quote">&quot;English&quot;</span>/&gt;
 &lt;/h:selectOneMenu&gt;</pre>
							</div>
						</div>
						<p>  下面這個頁面是對 立即事件
						中的范例程序作一個修改,將語言選項改以下拉式選單的選擇方式呈現,這必須配合上面提供的UserBean類別來使用:</p>
						<div class="code" style="BORDER-TOP-STYLE: solid; BORDER-RIGHT-STYLE: solid; BORDER-LEFT-STYLE: solid; BORDER-BOTTOM-STYLE: solid">
							<div class="codeHeader" style="BORDER-BOTTOM-STYLE: solid">
								<b>index.jsp</b></div>
							<div class="codeContent">
								<pre class="code-java">&lt;%@ taglib uri=<span class="code-quote">&quot;http:<span class="code-comment">//java.sun.com/jsf/core&quot;</span> prefix=&quot;f&quot; %&gt;
</span> &lt;%@ taglib uri=<span class="code-quote">&quot;http:<span class="code-comment">//java.sun.com/jsf/html&quot;</span> prefix=&quot;h&quot; %&gt;
</span> &lt;%@page contentType=<span class="code-quote">&quot;text/html;charset=UTF8&quot;</span>%&gt;

 &lt;f:view locale=<span class="code-quote">&quot;#{user.locale}&quot;</span>&gt;
 &lt;f:loadBundle basename=<span class="code-quote">&quot;messages&quot;</span> <span class="code-keyword">var</span>=<span class="code-quote">&quot;msgs&quot;</span>/&gt;

 &lt;html&gt;
 &lt;head&gt;
 &lt;title&gt;&lt;h:outputText value=<span class="code-quote">&quot;#{msgs.titleText}&quot;</span>/&gt;&lt;/title&gt;
 &lt;/head&gt;
 &lt;body&gt;

    &lt;h:form&gt;
        &lt;h:selectOneMenu value=<span class="code-quote">&quot;#{user.locale}&quot;</span>
                  immediate=<span class="code-quote">&quot;<span class="code-keyword">true</span>&quot;</span>
                  onchange=<span class="code-quote">&quot;<span class="code-keyword">this</span>.form.submit();&quot;</span>
                  valueChangeListener=<span class="code-quote">&quot;#{user.changeLocale}&quot;</span>&gt;

            &lt;f:selectItem itemValue=<span class="code-quote">&quot;zh_TW&quot;</span>
                          itemLabel=<span class="code-quote">&quot;Chinese&quot;</span>/&gt;
            &lt;f:selectItem itemValue=<span class="code-quote">&quot;en&quot;</span>
                          itemLabel=<span class="code-quote">&quot;English&quot;</span>/&gt;
        &lt;/h:selectOneMenu&gt;

        &lt;h3&gt;&lt;h:outputText value=<span class="code-quote">&quot;#{msgs.hintText}&quot;</span>/&gt;&lt;/h3&gt;
        &lt;h:outputText value=<span class="code-quote">&quot;#{msgs.nameText}&quot;</span>/&gt;:
                &lt;h:inputText value=<span class="code-quote">&quot;#{user.name}&quot;</span>/&gt;&lt;p&gt;
        &lt;h:outputText value=<span class="code-quote">&quot;#{msgs.passText}&quot;</span>/&gt;:
                &lt;h:inputSecret value=<span class="code-quote">&quot;#{user.password}&quot;</span>/&gt;&lt;p&gt;
        &lt;h:commandButton value=<span class="code-quote">&quot;#{msgs.commandText}&quot;</span>
                        action=<span class="code-quote">&quot;#{user.verify}&quot;</span>/&gt;
    &lt;/h:form&gt;

 &lt;/body&gt;
 &lt;/html&gt;
	
 &lt;/f:view&gt;</pre>
							</div>
						</div>
					</div>
					</td>
				</tr>
			</table>
			</td>
		</tr>
	</table>
</div>
<p> </p>

</body>

</html>

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产综合久久久久久久久久久久| 91精品综合久久久久久| 91精品婷婷国产综合久久竹菊| 久久久国际精品| 一区二区三区影院| 国产一区二区三区免费看 | 国产精品久久久久aaaa| 午夜伊人狠狠久久| av电影在线观看一区| 日韩片之四级片| 亚洲国产wwwccc36天堂| k8久久久一区二区三区| 久久在线观看免费| 亚洲成年人网站在线观看| 国内精品在线播放| 欧美精品自拍偷拍动漫精品| 一区在线中文字幕| 紧缚捆绑精品一区二区| 欧美精品粉嫩高潮一区二区| 一区二区三区在线观看动漫| av中文字幕不卡| 国产欧美日韩在线看| 久久疯狂做爰流白浆xx| 91精品欧美综合在线观看最新 | 日韩欧美视频一区| 成人激情午夜影院| 精品美女一区二区三区| 丝袜a∨在线一区二区三区不卡| 91丨九色丨尤物| 亚洲国产精品av| 国产成人精品三级麻豆| 精品日产卡一卡二卡麻豆| 日本不卡不码高清免费观看| 欧美日韩一区二区在线视频| 中文字幕日韩欧美一区二区三区| 国产在线观看一区二区| 日韩精品一区二区三区在线| 日韩高清国产一区在线| 欧美日韩精品一区二区三区四区 | 亚洲婷婷综合色高清在线| 国产高清精品网站| 久久一区二区三区四区| 久久www免费人成看片高清| 日韩免费看的电影| 日韩av一区二区三区四区| 欧美一级专区免费大片| 免费观看在线色综合| 日韩视频免费观看高清完整版 | 成人晚上爱看视频| 日本一区二区三区久久久久久久久不 | 天涯成人国产亚洲精品一区av| 欧美少妇一区二区| 亚洲图片欧美色图| 欧美无砖专区一中文字| 亚洲一区免费视频| 欧美日韩亚洲综合一区| 图片区日韩欧美亚洲| 欧美高清视频一二三区| 蜜乳av一区二区| 亚洲精品在线网站| 粉嫩高潮美女一区二区三区| 国产欧美一区二区精品秋霞影院| 不卡区在线中文字幕| 亚洲免费三区一区二区| 欧美性色欧美a在线播放| 日韩精品一二三四| 精品久久久久久最新网址| 国产乱子轮精品视频| 国产欧美日韩激情| 色综合天天综合网国产成人综合天| 一级特黄大欧美久久久| 91精品麻豆日日躁夜夜躁| 精品一区二区三区在线播放| 久久久久久电影| 91在线视频观看| 偷拍一区二区三区| 精品伦理精品一区| 国产成人免费视| 中文字幕日韩欧美一区二区三区| 欧美中文字幕亚洲一区二区va在线| 欧美自拍偷拍午夜视频| 午夜精品久久一牛影视| 亚洲精品一区二区三区在线观看| 国产乱人伦精品一区二区在线观看| 中文字幕亚洲一区二区av在线| 欧美日韩激情一区| 亚洲日本免费电影| 欧美日韩成人综合| 精品一区二区三区免费观看 | 精品少妇一区二区三区日产乱码| 国产精品一线二线三线精华| 欧美人伦禁忌dvd放荡欲情| 国产综合成人久久大片91| 日韩一区欧美小说| 欧美一区二区在线免费播放| 国产精品一卡二卡| 亚洲国产一区二区视频| 精品美女被调教视频大全网站| 99国内精品久久| 麻豆精品视频在线观看免费| 国产精品美女久久久久久久久| 欧美精品日韩精品| 成人永久看片免费视频天堂| 日韩二区三区在线观看| 国产精品福利在线播放| 欧美一区二区三区在线观看| eeuss鲁片一区二区三区| 日韩成人av影视| 亚洲素人一区二区| 精品日产卡一卡二卡麻豆| 欧美中文字幕一区二区三区亚洲| 国产一区二区三区国产| 亚洲成人激情自拍| 国产精品乱码一区二三区小蝌蚪| 欧美一二区视频| 色悠悠久久综合| 国产在线不卡视频| 久久婷婷综合激情| 在线播放/欧美激情| 不卡一区在线观看| 精品在线你懂的| 五月婷婷久久综合| 亚洲欧美日韩在线播放| 国产亚洲午夜高清国产拍精品| 欧美日韩精品欧美日韩精品| 夫妻av一区二区| 经典三级一区二区| 婷婷国产在线综合| 亚洲黄色片在线观看| 日本一区二区三区四区| xf在线a精品一区二区视频网站| 日本道免费精品一区二区三区| 亚洲综合一区二区精品导航| 亚洲国产精品黑人久久久| 2023国产精品视频| 这里只有精品99re| 欧美在线视频全部完| fc2成人免费人成在线观看播放| 国产一区视频导航| 另类调教123区| 日韩福利视频网| 天天色 色综合| 亚洲福利视频三区| 亚洲猫色日本管| 综合自拍亚洲综合图不卡区| 国产午夜亚洲精品午夜鲁丝片| 日韩三级视频中文字幕| 91精品国产欧美一区二区成人| 欧美性受xxxx黑人xyx| 蜜臀av性久久久久蜜臀aⅴ| 午夜精品久久久久久| 亚洲bt欧美bt精品777| 亚洲在线视频网站| 一区二区三区蜜桃网| 一区二区高清在线| 亚洲制服丝袜av| 亚洲国产你懂的| 成人少妇影院yyyy| 国产精品亚洲一区二区三区妖精 | 亚洲国产精品影院| 一区二区三区四区不卡视频| 亚洲丝袜另类动漫二区| 国产精品福利一区| 亚洲色图视频网| 91精品中文字幕一区二区三区| 91精品国产手机| 日韩精品专区在线影院观看 | 成人动漫av在线| 成人h精品动漫一区二区三区| 国产精品亚洲成人| 成人一道本在线| av一二三不卡影片| 91社区在线播放| 欧美丝袜自拍制服另类| 欧美日韩日日摸| 日韩午夜在线观看视频| 精品动漫一区二区三区在线观看| 精品国产乱码久久| 欧美艳星brazzers| 4438x亚洲最大成人网| 3d动漫精品啪啪1区2区免费| 欧美成人综合网站| 久久久久久夜精品精品免费| 国产日韩精品一区| 国产精品无人区| 亚洲最新视频在线观看| 亚洲mv在线观看| 经典三级一区二区| 99久久夜色精品国产网站| 欧美午夜精品一区| 日韩欧美一级在线播放| 国产亚洲欧洲997久久综合| 亚洲视频一区在线| 日韩高清国产一区在线| 一级做a爱片久久| 九九视频精品免费| av在线一区二区| 777久久久精品| 国产免费久久精品| 一区二区国产视频|