2017-01-22 5 views
-2

私はこのコードが、著者の道ではなく、作業フォームと私の間違ったコードで試してみたい:Javascriptどのようにテキストボックスの文字を変更するには?

<input class="copyMe" type="text" /> 
<input class="copyMe2" type="text" /> 

$(document).ready(function(){ 
var input = $(this).val(); 
var find = ["ş","Ş","ı","I","ğ","Ğ","ü","Ü","ö","Ö","ç","Ç","(",")","/",":",",","&","İ"]; 
var replace = ["s","s","i","i","g","g","u","u","o","o","c","c","","","-","-","","","i"]; 
input = input.replaceArray(find, replace); 
    $(".copyMe").keyup(function(){ 
     $(".copyMe2").val($(this).val().input); 
    }); 
}); 
+1

? – Blauharley

+0

このコードで何を期待していますか?それがうまくいかないことを私たちに伝えることは、それが何を意味するのかわからなければ何の助けにもなりません。 –

+0

私は最初の入力ö、ş、çを書いて、2番目の入力テキストボックスはo、s、cの出力を出力します – Nikolay

答えて

0

は、単にあなたがこのコード

$(document).ready(function() { 
    var find = ["ş", "Ş", "ı", "I", "ğ", "Ğ", "ü", "Ü", "ö", "Ö", "ç", "Ç", "(", ")", "/", ":", ",", "&", "İ"]; 
    var replace = ["s", "s", "i", "i", "g", "g", "u", "u", "o", "o", "c", "c", "", "", "-", "-", "", "", "i"]; 
    $(".copyMe").keyup(function() { 
     var input = $(this).val().replaceArray(find, replace); 
     $(".copyMe2").val(input); 
    }); 
}); 

を使用することができますがすることを忘れないでくださいをあなたは(今まで欠けている機能があります場合に便利)必要なものを行い、独自の機能を持つStringオブジェクトを拡張:だから

String.prototype.replaceArray = function(find, replace) { 
    var replaceString = this; 
    for (var i = 0; i < find.length; i++) { 
     replaceString = replaceString.split(find[i]).join(replace[i]); 
    } 
    return replaceString; 
}; 

、最終的なコードは、ウィットのようになります時間の追加jQueryのスクリプト

String.prototype.replaceArray = function(find, replace) { 
 
    var replaceString = this; 
 
    for (var i = 0; i < find.length; i++) { 
 
    replaceString = replaceString.split(find[i]).join(replace[i]); 
 
    } 
 
    return replaceString; 
 
}; 
 
$(document).ready(function() { 
 
    var find = ["ş", "Ş", "ı", "I", "ğ", "Ğ", "ü", "Ü", "ö", "Ö", "ç", "Ç", "(", ")", "/", ":", ",", "&", "İ"]; 
 
    var replace = ["s", "s", "i", "i", "g", "g", "u", "u", "o", "o", "c", "c", "", "", "-", "-", "", "", "i"]; 
 
    $(".copyMe").keyup(function() { 
 
    var input = $(this).val().replaceArray(find, replace); 
 
    $(".copyMe2").val(input); 
 
    }); 
 
});
<input class="copyMe" type="text" /> 
 
<input class="copyMe2" type="text" /> 
 

 
<script src="//code.jquery.com/jquery-1.11.3.min.js" type="text/javascript"></script>
あなたがこのStringメソッドreplaceArrayを定義している

+0

このコードを実行していただきありがとうございますが、このコードを2回書き直すと、最初と2回目は変更されません。出力例 – Nikolay

+1

ur Welcome @Nikolay '.split(find [i])。joinすべての文字をマッチさせるために、 '.replace(find [i]、replace [i])'の代わりに([i]) 'を置き換えてください。 –

+1

Ahmedさん、ありがとうございました。 – Nikolay

関連する問題