<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 165, comments - 198, trackbacks - 0, articles - 1
      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    頁面嵌入在線聊天 (prototype)

    Posted on 2007-06-13 10:22 G_G 閱讀(1450) 評(píng)論(3)  編輯  收藏 所屬分類: javascript
    問題 : 提供給B/S 結(jié)構(gòu)一個(gè)實(shí)時(shí)的運(yùn)行展現(xiàn)
    解決:?? prototype 的?Ajax.PeriodicalUpdater 更新
    ??????????? prototype 的??? Ajax.Request 語句提交
    ????????????action 語句的組織展現(xiàn)

    http://www.tkk7.com/Files/Good-Game/take.rar

    ????沒有l(wèi)ib 大家可以就加 struct 相關(guān) lib 就可以了

    說明:?
    ??????

    <!DOCTYPE?HTML?PUBLIC?"-//W3C//DTD?HTML?4.01?Transitional//EN">
    <html>
    ??
    <head>
    ??????????
    <SCRIPT?language="Javascript"?src="prototype1.5.0.js"></SCRIPT>
    ??
    </head>
    ??
    ??
    <body?onload="Said()">?
    ??????
    <INPUT?id='name1'?type="text"?size="10"?value="請(qǐng)輸入名字"?onfocus="if($('name1').value=='請(qǐng)輸入名字')?$('name1').innerText=''?"?/>
    ??????
    <INPUT?id='text1'?type="text"?onkeydown="if(event.keyCode==13){event.keyCode=0;?onb();}"/>
    ??????
    <INPUT?id='button1'?type="button"?value="test"?onclick='onb()'?/>
    ??
    </body>
    ??
    <div?id='div1'/>
    </html>
    <script?type="text/javascript"??>
    ??????? //語句異步提交給服務(wù)器 Ajax.Request
    ????
    function?onb(){?????????????????????????????????????????
    ??????
    if($('name1').value=='請(qǐng)輸入名字'?||?$('name1').value==''){
    ??????????window.alert('請(qǐng)輸入名字');
    ??????????
    return?
    ??????}

    ??????
    ??????
    var?url?=?'http://192.168.1.130:7000/xxs/mySaid.do?name='+$F('name1')+'&take='+$F('text1');????????????????
    ??????new?Ajax.Request(
    ????????url,
    ????????
    {
    ????????????method:?'get',
    ????????????onComplete:?action??????????????
    ????????}
    );
    ????????
    ????????$('name1').readOnly?
    =?true
    ????????$('name1').style.background?
    =?'lightblue'
    ????????$('text1').innerText
    =''?
    ????}

    ?????? //局部刷新 并提取 語句
    ????
    function?Said(){
    ????????
    var?url?=?'http://192.168.1.130:7000/xxs/mySaid.do';??
    ????????new?Ajax.PeriodicalUpdater(
    ????????????'div1',
    ????????????url,
    ????????????
    {
    ????????????????method:?'get',
    ????????????????onComplete:?SumSaid,
    ????????????????evalScripts:?
    true,
    ????????????????frequency:?
    1,
    ????????????????decay:?
    1
    ????????????}

    ????????);
    ????}

    ?????? //展現(xiàn)
    ????
    function?SumSaid(req){
    ????????$('div1').innerHTML?
    =?req.responseText;
    ????}


    ????
    function?action(req){
    ????}

    ????
    </script>
    ????

    Action
    ?? private static int SIZE = 30 ;
    ???? private List list = new ArrayList();

    ????
    public?ActionForward?execute(
    ????????ActionMapping?mapping,
    ????????ActionForm?form,
    ????????HttpServletRequest?request,
    ????????HttpServletResponse?response)?
    {
    ????????String?take?
    =?request.getParameter("take")?;
    ????????String?name?
    =?request.getParameter("name")?;
    ????????response.addHeader(
    "Cache-Control","no-cache");?
    ????????
    ????????request.setAttribute(
    "said",DueiLie(name,take));

    ????????
    try?{
    ????????????request.setCharacterEncoding(
    "gb2312");
    ????????????response.setCharacterEncoding(
    "gb2312");
    ????????}
    ?catch?(Exception?e)?{
    ????????}


    ????????
    return?mapping.findForward("list");
    ????}

    ?????
    ??????? //語句的組織
    ????
    public?String?DueiLie(String?name,String?take){
    ????????
    ????????StringBuffer?strb??
    =?new?StringBuffer();
    ????????
    if(name==null||take==null);
    ????????
    else{
    ????????????strb.append(?name?).append(
    "?:?").append(take).append("</br>")?;
    ????????????
    if(list.size()==SIZE){
    ????????????????list.remove(list.get(
    0));
    ????????????????list.add(strb.toString()?);
    ????????????}
    else{
    ????????????????list.add(?strb.toString()?);
    ????????????}

    ????????}

    ????????StringBuffer?takes?
    =?new?StringBuffer();
    ????????Iterator?it?
    =?list.iterator();
    ????????
    while(it.hasNext()){
    ????????????takes.insert(?
    0,(String)it.next()?);
    ????????}

    ????????
    return?takes.toString();
    ????}

    jsp ( list ) 中文處理 jsp 就一句話
    <%= new String(((String)request.getAttribute("said")).getBytes("iso8859-1"),"GBK") %>

    心得:別人做到了 我也能做到
    ?????????要學(xué)的東西很多 多看書 多留意 多保護(hù)好身體

    評(píng)論

    # re: 頁面嵌入在線聊天 (prototype)[未登錄]  回復(fù)  更多評(píng)論   

    2007-06-13 13:30 by 劉明
    可以給個(gè)Demo演示嗎?本人對(duì)struct不太懂。

    # re: 頁面嵌入在線聊天 (prototype)  回復(fù)  更多評(píng)論   

    2007-06-13 14:57 by G_G
    @劉明
    上頭下載的 就是 不過沒 lib :( 有點(diǎn)大
    你可以看 .classpath 放lib 我的 .classpath 有點(diǎn)亂
    你加 struct 的 lib 就可以了
    { 有 動(dòng)態(tài)建表(2) bean[] 直接到建表 (擴(kuò)展也很好) 的文檔的 lib 在里面 }
    對(duì)不起大家了
    有問題 到我
    liukaiyi@gmail.com 留言 謝謝

    # re: 頁面嵌入在線聊天 (prototype)  回復(fù)  更多評(píng)論   

    2007-06-13 17:16 by IT進(jìn)行時(shí)
    還是用smack吧,簡單又“正統(tǒng)”。
    主站蜘蛛池模板: 最近免费中文字幕mv电影| 在线免费视频一区二区| 久久国产免费观看精品3| 日韩版码免费福利视频| 在线观看无码的免费网站| 全部免费国产潢色一级| 久久亚洲国产成人影院网站| 久久精品亚洲视频| 亚洲中文字幕无码爆乳| 乱淫片免费影院观看| 日韩免费无码视频一区二区三区| 日韩视频在线精品视频免费观看| 内射无码专区久久亚洲| 亚洲成亚洲乱码一二三四区软件| 亚洲sss综合天堂久久久| 污视频网站免费观看| 中文字幕免费观看| 成人亚洲综合天堂| 亚洲AV无码一区二区二三区入口 | 日韩亚洲人成在线| 女人裸身j部免费视频无遮挡| 在线播放免费人成毛片乱码| 成年免费大片黄在线观看岛国| 亚洲精品NV久久久久久久久久| 亚洲情a成黄在线观看动漫尤物| 亚洲日韩AV一区二区三区四区| 一区二区三区免费视频播放器| 222www在线观看免费| 伊在人亚洲香蕉精品区麻豆| 麻豆亚洲AV永久无码精品久久| 337P日本欧洲亚洲大胆精品| 久久成人a毛片免费观看网站| 青青青国产免费一夜七次郎 | 亚洲国产a级视频| 亚洲国产成人精品无码区在线网站| 国产午夜亚洲精品不卡免下载| 95老司机免费福利| 亚洲国产精品自在拍在线播放 | 免费精品国自产拍在线播放| 97在线视频免费公开观看| 亚洲午夜爱爱香蕉片|