#javascript #html
#javascript #HTML
Вопрос:
У меня проблема с проверкой числа только в редактируемом столбце для моей таблицы. итак, вот мой HTML-код:
<table>
<tr>
<td contenteditable='true' name="presentase"></td>
</tr>
</table>
и это мой js только для чисел:
<script type="text/javascript">>
$(".allow_only_numbers").keydown(function (e) {
if ($.inArray(e.keyCode, [46, 8, 9, 27, 13, 110]) !== -1 ||
((e.keyCode == 65 || e.keyCode == 86 || e.keyCode == 67) amp;amp; (e.ctrlKey === true || e.metaKey === true)) ||
(e.keyCode >= 35 amp;amp; e.keyCode <= 40)) {
return;
}
if ((e.shiftKey || (e.keyCode < 48 || e.keyCode > 57)) amp;amp; (e.keyCode < 96 || e.keyCode > 105)) {
e.preventDefault();
}
});
</script>
как сделать так, чтобы столбец мог вводить число только в этом теге «td». где я должен разместить «.allow_only_numbers» в теге столбца?
итак, помогите мне решить это. Спасибо
Комментарии:
1. может
<input type='number' />
помочь вашему делу? Это лучше и экономит ваше время2. Вы говорите о «редактируемом столбце», но в вашем HTML вы написали
contenteditable='false'
. Пожалуйста, исправьте или объясните подробнее.3. извините, что я скопировал false, у меня также есть true.
Ответ №1:
Вы можете просто поместить allow_only_numbers
класс в td
также ваш contenteditable
должен быть true
$(".allow_only_numbers").keydown(function (e) {
if ($.inArray(e.keyCode, [46, 8, 9, 27, 13, 110]) !== -1 ||
((e.keyCode == 65 || e.keyCode == 86 || e.keyCode == 67) amp;amp; (e.ctrlKey === true || e.metaKey === true)) ||
(e.keyCode >= 35 amp;amp; e.keyCode <= 40)) {
return;
}
if ((e.shiftKey || (e.keyCode < 48 || e.keyCode > 57)) amp;amp; (e.keyCode < 96 || e.keyCode > 105)) {
e.preventDefault();
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table border="1" width="100px" height="50px">
<tr>
<td class="allow_only_numbers" contenteditable='true' name="presentase"></td>
</tr>
</table>
Ответ №2:
вы даже можете использовать форматировщик в таблице, как приведенный ниже код, используя функцию для отображения значения в таблице
<th data-field="DELETE_DOWNLOAD" data-align="center" data-formatter="deleteFileFormatter"></th>
где deleteFileFormatter — это функция, в которой значение, возвращаемое из функции, будет отправлено в таблицу