佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

查看: 1113|回复: 3

Javascript 疑问

[复制链接]
发表于 31-8-2012 11:57 PM | 显示全部楼层 |阅读模式
请问我要如何做到:-
1) 当click Symbols 表情符号时,characters 会扣?
2)   如何 detect SMStextarea里有华语字,且立刻把 160 (max character/message)改去60?

希望高手们帮帮忙,万分谢意。

<html》
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<script type="text/javascript" src="./jquery.min.js"></script>
<script type='text/javascript'>
window.onload=function(){
var SMSParaVars = {
SMSsymbol1: "",
SMSsymbol2: ""
};  
var mysmstextarea = document.getElementById('SMStextarea');
var mysmssymbolslist = document.getElementById('SMSsymbolslist');   
  
  mysmssymbolslist.onchange = function(){
    mysmstextarea.value = mysmstextarea.value  + SMSParaVars[this.value];
  }
}  

$(function(){
var $mysmsremaining = $('#SMSremaining'),
    $mysmsmessages = $mysmsremaining.next();
$('#SMStextarea').keyup(function(){
    var smschars = this.value.length;
mysmsmessages = Math.ceil(smschars / 160),
    mysmsremaining = mysmsmessages * 160 - (smschars % (mysmsmessages * 160) || mysmsmessages * 160);
    $mysmsremaining.text(mysmsremaining + ' characters /');
    $mysmsmessages.text(mysmsmessages + ' message');
});
});
</script>
<body>
<form name="frmsms" id="frmsms">
  <table width="auto" border="0">
    <tr>     
      <td align="center"><b>Symbols</b>  
        <select id="SMSsymbolslist" size="2">
   <option value="SMSsymbol1">Happy </option>
   <option value="SMSsymbol2">Sad </option>
        </select>
      </td>                 
    </tr>
    <tr>
      <td>
       <textarea name="SMStextarea" id="SMStextarea" cols="37" rows="12"></textarea>
         <span id="SMSremaining">150 characters /</span>         
         <span id="SMSmessages">1 message</span>
      </td>  
    </tr>   
  </table>
</form>
</body>
</html>
回复

使用道具 举报


ADVERTISEMENT

发表于 4-9-2012 05:41 PM | 显示全部楼层
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.8.1.min.js"></script>
<script type='text/javascript'>

$(function(){
  var limitChar, SMSParaVars
  , $mysmsmessages, $mysmsremaining, $mysmstextarea, $mysmssymbolslist;

  limitChar                  = 160; // default 160 chars
  $mysmsremaining     = $('#SMSremaining');
  $mysmstextarea       = $('#SMStextarea');
  $smsMessagesCount = $('#SMSmessages');
  $mysmssymbolslist   = $('#SMSsymbolslist');
  $mysmsmessages    = $mysmsremaining.next();

  SMSParaVars = {
    SMSsymbol1: "",
    SMSsymbol2: ""
  };

  $mysmssymbolslist.live('change', function(){
    $mysmstextarea.val($mysmstextarea.val()  + SMSParaVars[this.value]);

    calc();
  });

  calc();

  $('#SMStextarea').keyup(function(){
    calc();
  });

  function calc() {
    var smschars, mysmsmessages;

    smschars            = $mysmstextarea.val().length;
    mysmsmessages = Math.ceil(smschars / limitChar);

    if(isChinese()) {
      limitChar = 60;
    } else {
      limitChar = 160;
    }

    mysmsremaining = mysmsmessages * limitChar - (smschars % (mysmsmessages * limitChar) || mysmsmessages * limitChar);

    $mysmsremaining.find('span').text(mysmsremaining);
    $mysmsmessages.find('span').text(mysmsmessages);
  }

  function trim(str){
    return str.replace(/^\s*|\s*$/g,"";
  }

  function isChinese()   {
    var j, s;

    j = 0;
    s = trim($mysmstextarea.val());

    if (s=="" return true;

    for (var   i=0;   i<s.length;   i++)   {
      if (( (s.charCodeAt(i)== 32)
      || (s.charCodeAt(i)>=19968 && s.charCodeAt(i)<=64041) )) {
        return true;
      }
    }

    return false;
  }
});
</script>
<body>
<form name="frmsms" id="frmsms">
  <table width="auto" border="0">
    <tr>
      <td align="center"><b>Symbols</b>
        <select id="SMSsymbolslist" size="2">
   <option value="SMSsymbol1">Happy </option>
   <option value="SMSsymbol2">Sad </option>
        </select>
      </td>
    </tr>
    <tr>
      <td>
       <textarea name="SMStextarea" id="SMStextarea" cols="37" rows="12"></textarea>
         <span id="SMSremaining"><span></span> character(s) /</span>
         <span id="SMSmessages"><span></span> message(s)</span>
      </td>
    </tr>
  </table>
</form>
</body>
</html>
回复

使用道具 举报

 楼主| 发表于 8-9-2012 01:17 PM | 显示全部楼层
谢谢。thank you very much
回复

使用道具 举报

发表于 13-9-2012 04:40 PM | 显示全部楼层
不用客气。=)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 12-10-2025 11:42 PM , Processed in 0.178562 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表