
AutoKanaからautokana.jsを
prototypeからprototype.jsを
それぞれダウンロードし、ヘッダーに読み込ませ、ふりがな自動入力機能が備わったのですが、
姓と名をそれぞれ分けて自動入力させたいのですが、分けるといずれか片方が無効となってしまいます。
<p>苗字<br>
<input type="text" id="name" name="name" size="20"></p>
<p>名前<br>
<input type="text" id="name2" name="name2" size="20"></p>
<p>
<input type="text" id="ruby" name="ruby" size="20">
<input type="text" id="ruby2" name="ruby2" size="20"></p>
上記のように記述した場合、autokana.jsとprototype.jsはどのように変更すればよいでしょうか?
姓名分けることができればどのような方法でも構いません。
ご教示頂けると幸いです。
宜しくお願いいたします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
あなたの文章からは姓名の分かち書きされた入力項目各々についてふりがな振りたいということしかわかりません。
AutoKana.jsでルビを振りたいのか、それともAutoRuby.jsでそうしたいのかはっきりさせてもらわないと…。
どっちなんですかね?
特に制約がないならAutoKana.jsを使えばいいとおもいますけど、何が不満なんですかね?
No.1
- 回答日時:
↓みたいに単純に姓・名の要素名をそれぞれAutoKanaで2回呼び出せば動作すると思います。
<script type="text/javascript">
var auto_kana_1 = new AutoKana('name', 'ruby');
var auto_kana_2 = new AutoKana('name2', 'ruby2')
</script>
なぜ無効になるのかが分からない。
そもそも論としてはない機能を追加するのはまぁよしとして、この程度でライブラリを弄るのはどうも解せません。
ライブラリが改版された場合、そのままヴァージョンアップできなくなりますよ。
回答ありがとうございます。
new AutoKana('name', 'ruby');みたいな呼び出し方法ではないため困っています。
auto_ruby.jsもそのように呼び出すことができるのでしょうか?
var baseVal = "";
function setRuby(nameId,rubyId) {
var newVal = $(nameId).value;
if (baseVal == newVal){return;}
if (newVal == "") {
$(rubyId).value="";
baseVal = "";
return;
}
var addVal = newVal;
for(var i=baseVal.length; i>=0; i--) {
if (newVal.substr(0,i) == baseVal.substr(0,i)) {
addVal = newVal.substr(i);break;
}
}
baseVal = newVal;
var addruby = addVal.replace( /[^ ぁあ-んァー]/g, "" );
if (addruby == ""){return;}
if(convFlag){addruby = convKana(addruby);}
$(rubyId).value += addruby;
}
function loopTimer(){
setRuby($("name"),'ruby');
timer = setTimeout("loopTimer()",30);
}
function convKana(val){
var c, a = [];
for(var i=val.length-1;0<=i;i--){
c = val.charCodeAt(i);
a[i] = (0x3041 <= c && c <= 0x3096) ? c + 0x0060 : c;
}
return String.fromCharCode.apply(null, a);
}
var timer = false;
window.onload = function(){
loopTimer();
$(rubyField).onkeyup = setRuby(nameField,rubyField);
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【jQuery】input nameの文字列...
-
Array.sortメソッドのデフォル...
-
ASP.NETでNAME属性を固定にしたい
-
OnClickでURL生成し、飛ばしたい
-
return trueとreturn falseの用...
-
javaScriptの変数をJavaの変数...
-
【javascript・PHP】プルダウン...
-
<input>の選択肢をプルダウンメ...
-
onchangeイベントを強制的に発...
-
Formのシリアライズができない
-
至急!GetElementById でtdの...
-
データベースの値を判断してラ...
-
ラジオボタンが選択されたらテ...
-
innerHTML内では改行は禁止?
-
confirm()で表示したダイアログ...
-
Javascript ポップアップウィ...
-
複数のチェックボックス項目が...
-
Javascriptに条件分布ついて(再)
-
JavaScriptでテーブルの行入れ替え
-
チェックボックスのON/OFFでVal...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【jQuery】input nameの文字列...
-
出発駅A、到着駅Bを選択すると...
-
ASP.NETでNAME属性を固定にしたい
-
ラジオボタンでクリックした値...
-
動的にTabindexの値を変えたい!
-
JavaScriptにて動的に配列を作...
-
新しくフォルダを作成したい
-
二つの入力欄に、同時に同じ文...
-
ひ孫に当たるiframe から親ウイ...
-
VBscript で複数テキストがある...
-
jqueryでtextareaのcols、rows...
-
テキストボックスの入力をリセット
-
JQuery + autocomplete + ajax(...
-
JavaScriptで連想配列のマージ
-
付属の写真のようにエラーが出...
-
javascriptの値をformのinput h...
-
hiddenを動的に作成したい
-
ボタンを押すとテキストボック...
-
入力フォームに半角スペース以...
-
cookie使用時にundefinedと表示...
おすすめ情報