数字のみを受け入れるように数行書きましたが、スクリプトが機能しません。アルファベットを入力すると、不要なテキストボックスに挿入されます。テキストボックスが数値と「。」のみを受け入れるようにしたい 小数点のポイント。これが私のスクリプトです。何が悪いのか教えてください。
$().ready(function () {
$("input[id*='txtQty']").keyup(function (event) {
var flag = false;
if (event.shiftKey == true) {
event.preventDefault();
}
// Allow Only: keyboard 0-9, numpad 0-9, backspace, tab, left arrow, right arrow, delete
if ((event.keyCode >= 48 && event.keyCode <= 57) || (event.keyCode >= 96 && event.keyCode <= 105) || event.keyCode == 8 || event.keyCode == 9 || event.keyCode == 37 || event.keyCode == 39 || event.keyCode == 46) {
// Allow normal operation
flag = true;
} else {
// Prevent the rest
event.preventDefault();
}
if (flag) {
}
});
});
可能であれば、テキスト ボックスを数値と 10 進数のみで有効にするスクリプトを教えてください。ありがとう
これが私の完全なスクリプトです。問題は、ドット「。」を取っていることです。私はしたくない。
$().ready(function () {
$("input[id*='txtQty']").keydown(function (event) {
var flag = true;
if (event.shiftKey == true) {
event.preventDefault();
flag = false;
}
if ((event.keyCode >= 48 && event.keyCode <= 57) || (event.keyCode >= 96 && event.keyCode <= 105) || event.keyCode == 8 || event.keyCode == 9 || event.keyCode == 37 || event.keyCode == 39 || event.keyCode == 46 || event.keyCode == 190) {
} else {
event.preventDefault();
flag = false;
}
if (flag) {
if (jQuery.trim(this.value) != "") {
if (IsNumeric(jQuery.trim(this.value)) == true) {
var Symbol = $("span[id*='lblPrice']").text().trim().substring(1, 0);
var oldprice = $("input[id*='txtHiddenPrice']").val();
var newprice = Math.round((oldprice * this.value), 2);
$("span[id*='lblPrice']").text(Symbol + newprice);
UpdateCart($(this).closest('tr').find("input[id*='txtItemId']").val(), $(this).closest('tr').find("input[id*='txtProductId']").val(), this.value);
}
}
}
});
});
結果として、コードで何を変更する必要があるかを教えてください。私のページにはtxtQtyのように end という名前のテキストボックスがたくさんあるかもしれないので、ワイルドカードシステムで keydown() イベントを添付するもう1つの重要なこと。
$("input[id*='txtQty']").keyup(function (event) {
だから私を助けてください。ありがとう