2011年7月22日 星期五

[JavaScript] Iframe根據內容大小自動調整長度

此篇為動態調整iframe內容的高度
還在為iframe高度得設死所苦惱嗎?
用用看這個吧~

iframe內容

<iframe id='iframe1' src='../test.jsp' width='95%' height='400' frameborder='0' onload='Javascript:SetCwinHeight(iframe1)'>


JavaScript內容

<script type="text/javascript">
/**iframe根據載入內容自動控制高度~ **/
function SetCwinHeight(sId){
    var bobo=document.getElementById(sId); //iframe id
    if (document.getElementById){
        if (bobo && !window.opera){
            if (bobo.contentDocument && bobo.contentDocument.body.offsetHeight){
                bobo.height = bobo.contentDocument.body.offsetHeight+50;
                if(bobo.height <= 350 ){
                    bobo.height = 350;
                }
            }else if(bobo.Document && bobo.Document.body.scrollHeight){
                bobo.height = bobo.Document.body.scrollHeight+50;
                    if(bobo.height <= 350 ){
                        bobo.height = 350;
                    }
                }
            }
       }
}
</script>

2011年7月20日 星期三

[JAVA] JSON使用範例

JAVA JSON主要做為傳遞資料之用

以下為必備之JAR檔
  • jakarta commons-lang 2.5
  • jakarta commons-beanutils 1.8.0
  • jakarta commons-collections 3.2.1
  • jakarta commons-logging 1.1.1
  • ezmorph 1.0.6
更多參考網址
http://json-lib.sourceforge.net/
再來是範例

1. JSON吃Boolean
/**JSON 吃Boolean陣列*/
public JSONArray booleanTest(){
    boolean[] boolArray = new boolean[]{true,false,true};
    JSONArray boolJsonArr = JSONArray.fromObject(boolArray);
    return boolJsonArr;
}

1.1 顯示區塊
/**JSON 吃Boolean陣列*/
JSONArray boolJsonArr = jsonTest.booleanTest();
System.out.println("boolJsonArr=" + boolJsonArr);


2. JSON 吃List陣列
public JSONArray listTest(){
/**
* Json的真面目
* JSONArray jsonArray = JSONArray.fromObject("['測試0','測試1','測試2','測試3']");
* **/
    /**做資料*/
    List listArr = new ArrayList();
    for(int i=0; i<10; i++){
        listArr.add(i, "測試"+i);
    } /**將List資料用Json物件接收*/  
    JSONArray listJsonArr = JSONArray.fromObject(listArr);
    return listJsonArr;
}

2.2顯示區塊
/**JSON 吃List陣列*/
JSONArray listJsonArr = jsonTest.listTest();
System.out.println("listJsonArr=" + listJsonArr);


3. JSON 吃Map
public JSONObject mapTest(){
    /**做map資料*/
    Map map = new HashMap();
    map.put("name","shaw");
    map.put("bool", Boolean.TRUE);
    map.put("int", new Integer(1));
    map.put("arr", new String[]{"a","b"});
    map.put("func", "function(i){ return this.arr[i]; }");
    /**將Map資料用JSon物件接收*/
    JSONObject mapTestObj = JSONObject.fromObject(map);
    return mapTestObj;
}

3.1 顯示區塊
/**JSON 吃HashMap*/
JSONObject mapTestObj = jsonTest.mapTest();
System.out.println("mapTestObj=" + mapTestObj);


4. /**JSON 吃Bean*/
4.1 先建立一個Getter Setter的Bean物件
package org.shaw.MyDao;

public class FormTest {

/**
* @author Shaw Wu
* 建立測試表單用
*/
private Integer id;
private String name;
private String password;
private Integer age;

public Integer getId() {
    return id;
}

public void setId(Integer id) {
    this.id = id;
}

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

public String getPassword() {
    return password;
}

public void setPassword(String password) {
    this.password = password;
}

public Integer getAge() {
    return age;
}

public void setAge(Integer age) {
    this.age = age;
}

}


4.2 將Bean的Data存入JSON
/**JSON 吃Bean*/
public JSONObject beanTest(){
    /**new出Bean資料*/
    /**import org.shaw.MyDao.FormTest;**/
    FormTest formTest = new FormTest();
    formTest.setId(1);
    formTest.setName("Shaw");
    formTest.setPassword("12345");
    formTest.setAge(18);
    /**將Bean資料用JSon物件接收*/
    JSONObject beanTestObj = JSONObject.fromObject(formTest);
    return beanTestObj;
}


4.3 顯示區塊
/**JSON 吃Bean*/
JSONObject beanTestObj = jsonTest.beanTest();
System.out.println("beanTestObj=" + beanTestObj);
System.out.println(beanTestObj.get("age"));//單取一個Key值


[JQuery] JQuery UI 使用Tabs

  • 本篇使用JQuery UI實作Tbas及在Tbas切換頁面時以iframe方式嵌入頁面
  • 參考網址: JQuery UI官網: http://jqueryui.com/
-----------------------------------------------------------------------------------------------------------
  • 必備資源
<link rel="stylesheet" href="themes/base/jquery.ui.all.css">
<script src="jquery/jquery-1.5.1.js"></script>
<script src="ui/jquery.ui.core.js"></script>
<script src="ui/jquery.ui.widget.js"></script>
<script src="ui/jquery.ui.tabs.js"></script>

  • Tabs html 顯示部分
<div class="demo">
<div id="tabs">
    <ul>
        <li><a id="title1" href="#tabs-1">服務1</a></li>
        <li><a id="title2" href="#tabs-2">服務2</a></li>
        <li><a id="title3" href="#tabs-3">服務3</a></li>
    </ul>
    <div id="tabs-1"></div>
    <div id="tabs-2"></div>
    <div id="tabs-3">
        <p>第一行.</p>
        <p>第二行.</p>
    </div>
</div><!-- End tabs -->

  • JQuery部分
<script>
$(function() {
    /**Tabs*/
    $( "#tabs" ).tabs();    

    /**嵌入Iframe*/
    $("#title1").click(function(){
        var iframeStr = "<iframe src='iframeTest.jsp' width='90%'
                          height='300'frameborder='0'>";
        $("#tabs-1").html(iframeStr);
    })

    /**嵌入Iframe*/
    $("#title2").click(function(){
        var iframeStr = "<iframe src='ajaxChild.jsp?serviceId="+$("#serviceId").val()
                          +"'width='90%' height='300' frameborder='0'>";
        alert("tabs-2");//test
        $("#tabs-2").html(iframeStr);
    })

});//$(function() {
</script>


  • 塞入網頁Hidden值
<form id="form_data" name="form_data" action="IQueryTabs.jsp" Method="post">
<INPUT TYPE="hidden" id="serviceId" name="serviceId" value="<%=serviceId+1%>" />
</form>

2011年7月17日 星期日

在Blogger鑲嵌程式碼

1. 在Blogger鑲嵌程式碼首先先把你要的程式碼轉譯一下
下面這個Encoding的網站滿好用的
http://www.opinionatedgeek.com/DotNet/Tools/HTMLEncode/Encode.aspx

2. 再來將轉譯完後的程式碼以<code></code>的標籤框起來丟到以[修改HTML]狀態的文章編輯裡面
就ok啦~

3. 至於<code></code>標籤是怎麼產生的?

先在[設計]->[修改HTML]編輯裡面加入以下這一段CSS Code就可以使用了, 要放在/head前面喔


CODE {
display: block; /* fixes a strange ie margin bug */
font-family: Courier New;
font-size: 8pt;
overflow:auto;
background: #f0f0f0 url(http://klcintw.images.googlepages.com/Code_BG.gif) left top repeat-y;
border: 1px solid #ccc;
padding: 10px 10px 10px 21px;
max-height:200px;
line-height: 1.2em;
}

這樣就大公告成啦~

JSTL標籤 初探 以<c:forEach>為例

HTML為一種網頁程式標籤
要引入HTML之前要先在表頭前放入

<%-- 使用JSTL --%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

  1. forEach 單層
<TABLE border="0">
<c:forEach items="<%=serviceName%>" var="service" >
   <tr>
       <td>
           ${service}</br>
       </td>
   </tr>
</c:forEach>
</TABLE>

  1. forEach 單層另外加串一個陣列
<TABLE border="0">
<c:set value="<%=titleAlia%>" var="Alias" />
    <c:forEach items="<%=serviceName%>" var="service" varStatus="count">
        <tr>
            <td class="navtwo-2">
                ${service}${Alias[count.count-1]}</br>
            </td>
        </tr>
</c:forEach>
</TABLE>


----------------------------------------------------------------
<c:set>標籤可將你要的物件轉為JSTL的物件
在這邊我將一個LIST陣列Set進JSTL裡面, 再用${Alias[]}將他取出


<c:forEach>標籤具有以下一些屬性:

var:迭代參數的名稱。在迭代體中可以使用的變量的名稱,用來表示每一個迭代變量。類型為String。

items:要進行迭代的集合。對於它所支持的類型將在下面進行講解。

varStatus:迭代變量的名稱,用來表示迭代的狀態,可以訪問到迭代自身的信息。

begin:如果指定了items,那麼迭代就從items[begin]開始進行迭代;如果沒有指定items,那麼就從begin開始迭代。它的類型為整數。

end:如果指定了items,那麼就在items[end]結束迭代;如果沒有指定items,那麼就在end結束迭代。它的類型也為整數。

step:迭代的步長。

-----------------------------------------------------------------------------------------------
再持續補充吧^^

2011年7月15日 星期五

對switch/router下AAA command

aaa new-model //開啟AAA

line con 0 //針對console,亦可對line vty
login authentication no-auth //名稱為no-auth
aaa authentication login no-auth none

tacacs-server host x.x.x.x key ******** //指定tacacs server
radius-server host x.x.x.x key ******** //指定radius server

aaa authentication login default group tacacs group radius local //驗證順序tacacs,radius,local

sh run | include aaa

aaa accounting commands 0 default stop-only group tacacs+ //accounting 設定prillege level
aaa accounting commands 1 default stop-only group tacacs+
aaa accounting commands 2 default stop-only group tacacs+
aaa accounting commands 3 default stop-only group tacacs+
aaa accounting commands 13 default stop-only group tacacs+
aaa accounting commands 15 default stop-only group tacacs+
aaa accounting connection default start-stop group tacacs+
aaa accounting system default stop-only group tacacs+

2011年7月13日 星期三