私のすべてのドキュメントに対して外部汎用関数を作成しようとしました。その関数は、関数の内部で作業するために "this"メソッドを使い、 "this"値は差分ボタンから来ています。しかし、このコードは私のために働いていません。それを解決する方法。外部関数への値の受け渡しJQuery
のjQueryコード:
function myFunction(e){
var inp = $(this).val(), target = e.target, position = target.selectionStart;
inp = inp.replace(/a/g, "A");
inp = inp.replace(/i/g, "I");
inp = inp.replace(/u/g, "U");
inp = inp.replace(/e/g, "E");
$(this).val(inp);
$(this).get(0).setSelectionRange(position, position);
}
jQueryの
を使用して外部関数に値を送る$(document).ready(function(){
$('#Search').keyup(myFunction('#Search'));
});
HTMLコード:
<form name="inputform">
<input class="Search" type="text" autofocus name="searchbox" id="Search" style="width:800px; height:200px;">
</form>
私が直接テキストボックスのIDを置く場合それは仕事です大丈夫です。
keyupにバインドするときに '#Search''を' myFunction( 'Search') 'に渡すのはなぜですか?いくつかの設定を渡す必要がありますか? – synthet1c
いいえ。この外部機能は一般的です。そのためにもう少しテキストボックスを使用しています。だから私が他のテキストボックスに変更する場合、そのテキストボックスのIDを関数の側で処理するように渡したいと思う。それで私はなぜ「これ」を一般にも使ったのです。 – user43153