jQuery - 如何将字符串从文本框转换为字节?

时间:2010-07-12 10:37:05

标签: javascript jquery sms byte chars

我需要将字符串从文本字段转换为字节。我怎么能这样做?

原因:文本框上的文字将通过短信发送给客户端,我受限了 文字到160chars但是如果我把特殊的字符比如@€‰‰‰€@ @ 那么它会大于 256个字节(这是短信的大小)。

所以我需要从256中删除转换后的文本到字节,并将结果转换为正常的字符长度。

实施例

var charsleft = toChars(256 - toBytes(mystring));

编辑:
原因是Javascript:我有一句话说“XXX chars left”

2 个答案:

答案 0 :(得分:2)

使用您喜欢的语言执行 serverside 。 Java / ECMA脚本对于此类操作来说确实是个不好的地方。这已经是character encoding的混乱了所以请你自己帮个忙,跳过麻烦content-types和东西。将字符串作为UTF8(例如)发送到您的服务器并在那里完成工作。

答案 1 :(得分:0)

您使用什么系统从jQuery发送短信?我怀疑它将通过HTTP请求,在这种情况下服务应该为您进行编码。在某些情况下,有些字符没有在GSM字符集中表示,而其他情况下字符需要表示为“转义对”字节。

您正在使用的服务的文档应该能够告知您正确的SMS正文格式。

例如:http://www.bulksms.com/int/docs/eapi/submission/character_encoding/

完全披露:我为BulkSMS工作