Javascript-форум (https://javascript.ru/forum/)
-   (X)HTML/CSS (https://javascript.ru/forum/xhtml-html-css/)
-   -   Корректировать код php (https://javascript.ru/forum/xhtml-html-css/77673-korrektirovat-kod-php.html)

nikitamakarov1999 05.06.2019 15:09

Корректировать код php
 
Друзья помогите пожалуйста, не могу разобраться. Вообщем нужно сделать так что бы кроме цифр, НИЧЕГО НЕ ВВОДИЛОСЬ, даже символы. Только цифры.
Кто может помогите!:victory:
<script>
function validateBetSize(inp) {
if (inp.value < 1) {
inp.value = ;
}
if($('#BetSize').val() == 0 || $('#BetSize').val() == ''){
inp.value = inp.value.replace(/[,]/g, '.')
.replace(/[^\d,.]*/g, '')
.replace(/([,.])[,.]+/g, '$1')
.replace(/^[^\d]*(\d+([.,]\d{0,2})?).*$/g, '$1');
}
</script>

Malleys 05.06.2019 16:26

Так почему бы не использовать поле ввода для чисел?
<input type="number" id="BetSize">

nikitamakarov1999 05.06.2019 18:17

Цитата:

Сообщение от nikitamakarov1999 (Сообщение 508761)
Друзья помогите пожалуйста, не могу разобраться. Вообщем нужно сделать так что бы кроме цифр, НИЧЕГО НЕ ВВОДИЛОСЬ, даже символы. Только цифры.
Кто может помогите!:victory:
<script>
function validateBetSize(inp) {
if (inp.value < 1) {
inp.value = ;
}
if($('#BetSize').val() == 0 || $('#BetSize').val() == ''){
inp.value = inp.value.replace(/[,]/g, '.')
.replace(/[^\d,.]*/g, '')
.replace(/([,.])[,.]+/g, '$1')
.replace(/^[^\d]*(\d+([.,]\d{0,2})?).*$/g, '$1');
}
</script>

симфолы пишутся все равно, например такой как минус

Malleys 05.06.2019 20:38

Цитата:

Сообщение от nikitamakarov1999
симфолы пишутся все равно, например такой как минус

Не ясно, что вы хотите.

Может вы хотите, чтобы можно было вводить только натуральные числа?

Если вам нужны только натуральные числа любыми цифрами...
<input id="BetSize">
<script>
addEventListener("input", ({ target }) => {
  if(target.id == "BetSize")
    target.value = target.value.replace(/\P{Number}/gu, "");
});
</script>


Если вам нужны только натуральные числа арабскими цифрами...
<input id="BetSize">
<script>
addEventListener("input", ({ target }) => {
  if(target.id == "BetSize")
    target.value = target.value.replace(/\D+/g, "");
});
</script>

nikitamakarov1999 05.06.2019 20:47

вы мне дали код, я его попробовал. Согласен, буквы не вводятся и прочее. Но мне нужно что бы вводились только цифры. Так как в вашем коде вводятся символы плюс и минус!!!

<input id="BetSize" onkeyup="validateBetSize(this)" class="form-control text-xs-center" value="1">


Мне нужно что бы тут, не вводилось НИЧЕГО, кроме цифр. Не плюс и не минус, никаких букв и запятых.

nikitamakarov1999 05.06.2019 20:54

Malleys,
вы мне дали код, я его попробовал. Согласен, буквы не вводятся и прочее. Но мне нужно что бы вводились только цифры. Так как в вашем коде вводятся символы плюс и минус!!!

<input id="BetSize" onkeyup="validateBetSize(this)" class="form-control text-xs-center" value="1">


Мне нужно что бы тут, не вводилось НИЧЕГО, кроме цифр. Не плюс и не минус, никаких букв и запятых.

Malleys 05.06.2019 20:59

Цитата:

Сообщение от nikitamakarov1999
Так как в вашем коде вводятся символы плюс и минус!!!

В посте №4 вводятся только натуральные числа, например 42 или ㊷. Там два примера, выберите какой вам подходит. Любые натуральные числа или только натуральные числа арабскими цифрами, смотрите пост №4.

Правда те примеры не учитывают эмоциональный ввод чисел! (Понижают до обычных чисел 4️⃣2️⃣)

nikitamakarov1999 05.06.2019 21:05

я сделал, слушай ты очень мне помог. скинь свой вк мы спишемся. пару советов хочу спросить


Часовой пояс GMT +3, время: 22:17.