Javascript 如何改变文本框的字符?
Javascript how to change character on textbox?
我想试试这个代码,但作者的方式,而不是工作形式,我的错误代码在哪里:
<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);
});
});
只需使用此代码即可
$(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>
我想试试这个代码,但作者的方式,而不是工作形式,我的错误代码在哪里:
<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);
});
});
只需使用此代码即可
$(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>