ユーザーが単語/文を入力する単純なjavascriptプログラムを作成しようとしましたが、プログラムは、ガラケーでテキストを入力するために入力する数字を表示します。たとえば、「add」と入力すると、「122」が出力されます。
どうすればいいですか?私はさまざまなことを試しましたが、何もうまくいきません。単純なプログラムのようです。これを行うのを手伝ってもらえますか、それとも同様のプログラムにリンクしてもらえますか?
ありがとう。
ユーザーが単語/文を入力する単純なjavascriptプログラムを作成しようとしましたが、プログラムは、ガラケーでテキストを入力するために入力する数字を表示します。たとえば、「add」と入力すると、「122」が出力されます。
どうすればいいですか?私はさまざまなことを試しましたが、何もうまくいきません。単純なプログラムのようです。これを行うのを手伝ってもらえますか、それとも同様のプログラムにリンクしてもらえますか?
ありがとう。
function str2num(mystr) {
mystr = mystr.toUpperCase();
var conv = [];
var l = mystr.length;
for (var i=0; i conv[i] = mystr.charCodeAt(i)-65;
}
return conv;
}
http://www.yaldex.com/FSEquivalents/PhoneNumberConverter.htm電話コンバーター
リンクが壊れた場合のコードは次のとおりです。
<script language="javascript" type="text/javascript">
<!-- Begin
function convert(input) {
var inputlength = input.length;
input = input.toLowerCase();
var phonenumber = "";
for (i = 0; i < inputlength; i++) {
var character = input.charAt(i);
switch(character) {
case '0': phonenumber+="0";break;
case '1': phonenumber+="1";break;
case '2': phonenumber+="2";break;
case '3': phonenumber+="3";break;
case '4': phonenumber+="4";break;
case '5': phonenumber+="5";break;
case '6': phonenumber+="6";break;
case '7': phonenumber+="7";break;
case '8': phonenumber+="8";break;
case '9': phonenumber+="9";break;
case '-': phonenumber+="-";break;
case 'a': case 'b': case 'c': phonenumber+="2";break;
case 'd': case 'e': case 'f': phonenumber+="3";break;
case 'g': case 'h': case 'i': phonenumber+="4";break;
case 'j': case 'k': case 'l': phonenumber+="5";break;
case 'm': case 'n': case 'o': phonenumber+="6";break;
case 'p': case 'q': case 'r': case 's': phonenumber+="7";break;
case 't': case 'u': case 'v': phonenumber+="8";break;
case 'w': case 'x': case 'y': case 'z': phonenumber+="9";break;
}
}
document.myform.number.value = phonenumber;
return true;
}
// End -->
</script>
<form name=myform>
<table border=0>
<tr>
<td>Alphanumeric #:</td>
<td><input type=text size=20 maxlength=20 name=alphabet value="Rachel"></td>
</tr>
<tr>
<td>Converted #:</td>
<td><input type="text" size=20 maxlength=20 name="number"></td>
</tr>
<tr>
<td align=center colspan=2><input type=button value="Convert" onClick="return convert(document.myform.alphabet.value)"></td>
</table>
</form>
これはあなたが望むことをするはずです: http://jsfiddle.net/qbFxs/1/
var map = [' ',,'abc','def','ghi','jkl','mno','pqrs','tuv','wxyz'];
$("#input").keyup(function(e){
var v = this.value.toLowerCase(),
out = [];
for(var i = 0; i < v.length; i++){
for (var j = 0; j < map.length; j++){
if (map[j] && map[j].indexOf(v[i]) > -1){
out.push(j);
break;
}
}
}
$("#output").text(out.join(''));
});
注:スペースを にマップ0
しました。これが必要ない場合は、マップ配列の最初の要素を取り除くことができます。