<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12
      happyhippy

      這個(gè)世界的問題在于聰明人充滿疑惑,而傻子們堅(jiān)信不疑。--羅素

          在項(xiàng)目中,遇到一個(gè)場景:希望能在TextArea中輸入某條記錄中的明細(xì)(明細(xì)較簡單,沒有附屬信息,只用記錄順序和值即可,譬如用“+”號(hào)來作為明細(xì)分隔符:1+1.5+2+3.4),如下圖所示:

      TextAreaPosition

          為了讓輸入更直觀,需要在輸入過程中,實(shí)時(shí)地顯示匯總數(shù)量和合計(jì);如果用戶希望編輯文本中間的某條明細(xì),也可以通過鼠標(biāo)點(diǎn)擊、或者鍵盤上的上下左右鍵來定位某個(gè)明細(xì),并在頁面上提示光標(biāo)的焦點(diǎn)位置。

       

          最開始,通過windows.event.x、windows.event.y、windows.event.clientX、windows.event.clientY來獲取光標(biāo)位置;在測試過程中發(fā)現(xiàn),鼠標(biāo)點(diǎn)擊的時(shí)候可以取到正確的位置,但一旦把鼠標(biāo)移走,或者用上下左右鍵移動(dòng)光標(biāo),就無法定位光標(biāo)的位置了。

         1:  
         2:     function getPosition(input)
         3:     {
         4:         var rng = event.srcElement.createTextRange(); 
         5:         rng.collapse(true);
         6:         rng.moveToPoint(window.event.clientX, window.event.clientY);
         7:         rng.moveStart("character", -input.value.length);
         8:  
         9:         var a = [];
        10:         rng.text.replace(/\+/g, function($0) { a.push($0); });
        11:         document.getElementById("position").innerHTML = "第:" + (a.length + 1) + "條明細(xì)";
        12:     }

          windows.event.x/y/clientX/clientY,取得的是事件觸發(fā)時(shí),鼠標(biāo)的位置,不是文本框中光標(biāo)的位置,所以這段代碼無法定位文本框中光標(biāo)的位置。

       

      網(wǎng)上搜了下,找到另外一種實(shí)現(xiàn)方式,測試代碼如下:

         1: <span id="stat">數(shù)量:0, 合計(jì):0</span>
         2: <span style="width:20px"></span>
         3: <span id="position"></span><br />
         4: <textarea ID="tbxWeightDetail" style="width:250px" width="250px" runat="server" TextMode="MultiLine" 
         5:     onchange="getPosition(this);calcWeight(this, true);" 
         6:     onkeyup="getPosition(this);calcWeight(this);" onclick="getPosition(this);" onblur="clearPosition(this);"
         7:     ></textarea>
         8:  
         9: <script>
        10:     function calcWeight(input, c)
        11:     {
        12:         var a = [];
        13:         input.value.replace(/\d+([\.]\d+){0,1}/g, function($0) { a.push($0); });
        14:         var sum = eval(a.join("+")) || 0;
        15:         document.getElementById("stat").innerHTML = "數(shù)量:" + a.length + ", 合計(jì):" + sum.toFixed(2);
        16:         if (c)
        17:         {
        18:             input.value = a.join("+");
        19:         }
        20:     }
        21:  
        22:     calcWeight(document.getElementById("tbxWeightDetail"));
        23:  
        24:     function getPosition(input)
        25:     {
        26:         var rng = event.srcElement.createTextRange();
        27:         var length = 0;//設(shè)置初始位置
        28:         input.focus();
        29:         var scrollPosition = input.scrollTop;//獲得滾動(dòng)條的位置  
        30:         var selectedRange = document.selection.createRange();//創(chuàng)建文檔選擇對象
        31:         rng.collapse(true);
        32:         rng.select();
        33:         var j = document.selection.createRange();//為新的光標(biāo)位置創(chuàng)建文檔選擇對象
        34:         selectedRange.setEndPoint("StartToStart",j);//在以前的文檔選擇對象和新的對象之間創(chuàng)建對象
        35:         var str = selectedRange.text;//獲得對象的文本
        36:         var re = new RegExp("[\\n]","g");
        37:         str = str.replace(re,"");//過濾  
        38:         length = str.length;//獲得長度.也就是光標(biāo)的位置  
        39:         selectedRange.collapse(false);  
        40:         selectedRange.select();//把光標(biāo)恢復(fù)到以前的位置
        41:         input.scrollTop = scrollPosition;//把滾動(dòng)條恢復(fù)到以前的位置
        42:  
        43:         var a = [];
        44:         str.replace(/\+/g, function($0) { a.push($0); });
        45:         document.getElementById("position").innerHTML = "第" + (a.length + 1) + "個(gè)明細(xì)";
        46:     }
        47:  
        48:     function clearPosition(input)
        49:     {
        50:         document.getElementById("position").innerHTML = "";
        51:     }
        52: </script>
      posted on 2010-08-06 18:50  Silent Void  閱讀(16294)  評(píng)論(2)    收藏  舉報(bào)

      主站蜘蛛池模板: 四虎影院176| 亚洲最大在线精品| 在线看无码的免费网站| 色综合久久夜色精品国产| 临清市| 国产精品美腿一区在线看| 国内少妇人妻偷人精品| 亚洲黄日本午夜一区二区| 国色天香成人一区二区| 国产AV午夜精品一区二区三区| 无码h黄肉动漫在线观看| 精品视频国产狼友视频| 野花社区www视频日本| 好深好湿好硬顶到了好爽| 亚洲久久色成人一二三区| 亚洲一区二区在线无码| 在线观看中文字幕国产码| 国产综合精品91老熟女| 国产亚洲精品在av| 狠狠躁夜夜躁人人爽天天5| 中文字幕99国产精品| 99精品国产丝袜在线拍国语| 97一期涩涩97片久久久久久久| 亚洲av日韩av综合在线观看| 蜜桃精品成人影片| 4虎四虎永久在线精品免费| 欧美国产日韩久久mv| 无遮挡高潮国产免费观看| 开心久久综合激情五月天| www插插插无码免费视频网站| 亚洲精品国产字幕久久麻豆| 黄色三级亚洲男人的天堂| 日韩一区国产二区欧美三区| 国产老熟女一区二区三区| 亚洲精品天堂一区二区| 乾安县| 亚洲香蕉伊综合在人在线| 在线观看亚洲精品国产| 日本一区不卡高清更新二区| 亚洲av色综合久久综合| 国产精品天干天干综合网|