powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / (jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
25 сообщений из 33, страница 1 из 2
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39057834
Cyrax_02
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если в поле ввода типа (number) ввести НЕЧИСЛО (например, "55r"), то функции
Код: javascript
1.
2.
$(inputId).val()
$(inputId).attr('value')

будут возвращать пустую строку, как будто в поле ничего не ввели.
Как в этом случае получить значение "55r" ?
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39057837
Cyrax_02
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если перед получением значения преобразовать тип поля в "text":
Код: javascript
1.
2.
$(inputId).attr('type', 'text');
$(inputId).val()

то по-прежнему получим пустую строку, поскольку в момент преобразования поля в текстовое оно очищается. Вернее, в момент преобразования текстовому полю присваивается значение, возвращаемое числовым полем до преобразования (а числовое поле возвращает пустую строку)
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39057947
kunaksergey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Cyrax_02,
Что-то мне подсказывает, что прийдется считывать символы нажатия
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39058042
kunaksergey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
кстати кстати... вот костыль:
Код: javascript
1.
2.
inputid.select(); 
var value = window.getSelection().toString();
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39058108
Gwa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cyrax_02,

var val = $('#inputId').val();

<input type="number" id="inputId">
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39058281
Cyrax_02
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gwa , считайте, что в моих примерах inputId - это JQuery-объект.

Да, в примерах корректнее было бы записать так:
Код: javascript
1.
var val = $('#inputId').val();

или так:
Код: javascript
1.
var val = input.val();

Но сути вопроса это не меняет...
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39058309
Cyrax_02
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторкстати кстати... вот костыль:
Код: javascript
1.
2.
inputid.select(); 
var value = window.getSelection().toString();



Возвращает пустую строку. По той причине, что к моменту выполнения метода
Код: javascript
1.
window.getSelection()

выделение (на уровне интерфейса) ещё не успевает выполниться.
(убедиться в этом можно так: если после селекта вывести сообщение, то в момент его отображения выделения ещё не будет)

Перед getSelection() нужно поставить что-то вроде processEvents . Есть такое в JS ?
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39058392
kunaksergey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Cyrax_02авторкстати кстати... вот костыль:
Код: javascript
1.
2.
inputid.select(); 
var value = window.getSelection().toString();



Возвращает пустую строку. По той причине, что к моменту выполнения метода
Код: javascript
1.
window.getSelection()

выделение (на уровне интерфейса) ещё не успевает выполниться.
(убедиться в этом можно так: если после селекта вывести сообщение, то в момент его отображения выделения ещё не будет)

Перед getSelection() нужно поставить что-то вроде processEvents . Есть такое в JS ?
Вообще-то этот код надо вешать на событие.
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39058516
Cyrax_02
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторВообще-то этот код надо вешать на событие. Он и так висит на событии ввода. Но причём здесь событие ?

Ведь мы получаем значение сразу после селекта. А выделение - это не просто какой-то флаг во внутренних переменных установить. Это ещё и интерфейсная операция - на экране это самое выделение должно отрисоваться. И только после этого
Код: javascript
1.
window.getSelection().toString()

вернёт текст выделения
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39058599
kunaksergey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Cyrax_02,

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
<script type="text/javascript">
window.onload=function(){
	inputid.onchange=function(){
		this.select();
		var myValue = window.getSelection().toString();
		this.blur();
		console.log (myValue);
	}
}
</script>
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39058644
Cyrax_02
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kunaksergeyCyrax_02,

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
<script type="text/javascript">
window.onload=function(){
	inputid.onchange=function(){
		this.select();
		var myValue = window.getSelection().toString();
		this.blur();
		console.log (myValue);
	}
}
</script>

автор Возвращает пустую строку .авторПо той причине, что к моменту выполнения метода window.getSelection() выделение (на уровне интерфейса) ещё не успевает выполниться.авторЭто ещё и интерфейсная операция - на экране это самое выделение должно отрисоваться. И только после этого window.getSelection().toString() вернёт текст выделения
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39058656
kunaksergey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Cyrax_02,

нифига не пойму тогда что вам нужно.. или я тупой или так описываете проблемму.
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39058722
Cyrax_02
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторнифига не пойму тогда что вам нужно..Почему в вашем примере
Код: javascript
1.
window.getSelection().toString()

возвращает пустую строку ?

Пустую строку возвращать НЕ ДОЛЖЕН. Должен вернуть текстовое содержимое поля.
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39058824
SharuPoNemnogu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39058840
Cyrax_02
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторвот жеПрисваивает пустую строку. Даже если число нормальное указать.
И вообще, не выделяет содержимое. Лучше в реальных браузерах проверять.
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39058842
Cyrax_02
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторИ вообще, не выделяет содержимое.
Почему не выделяет - не знаю, но пустую строку присваивает - потому, что не выделяет.
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39058843
Cyrax_02
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проверяю в FF 40.0.3
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39058844
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cyrax_02,
сделай небольшую html для проверки, проверю у себя
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39058913
Gwa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cyrax_02,
пример "вот же" в FF не пашет, но работает в Хроме
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39061917
Cyrax_02
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторПочему не выделяет - не знаю, но пустую строку присваивает - потому, что не выделяет. В FF на странице jsfiddle выделение вообще не выполняется (почему - неизвестно).
В FF в реальном браузере выделение выполняется, но только после завершения выполнения текущего js-кода (в котором выполнен select )

авторпример " вот же " в FF не пашет, но работает в Хроме Так Хром в поле (number) вообще не даёт вводить символы, отличные от цифровых (а при вставке из буфера - символы фильтрует).

В связи с чем:
а) в хроме сабжевый вопрос не имеет актуальности
б) в сабже необходимо рассматривать именно FF, который допускает ввод нецифровых символов в поле типа (number)
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39061932
Cyrax_02
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторб) в сабже необходимо рассматривать именно FF, который допускает ввод нецифровых символов в поле типа (number) авторВ FF в реальном браузере выделение выполняется, но только после завершения выполнения текущего js-кода (в котором выполнен select)авторсделай небольшую html для проверки, проверю у себя
Вот пример (проверять в FF):
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Test</title>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8" />    
    <script type="text/javascript" src="http://yastatic.net/jquery/1.11.3/jquery.min.js" charset="UTF-8"></script>

    <script type="text/javascript" charset="UTF-8">
        $(document).ready(function() {

            $('#get').on('click', function() {
                $('#field').select();        
                alert('Field content: ' + window.getSelection().toString());
            });        

        });
    </script>
</head>
<body>

    <input type="number" id="field" value="num" />   
    <input type="button" id="get" value="Get field content" />

</body>
</html>


Задача: при нажатии на кнопку получить всё содержимое поля (проверять в FF)
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39062013
Gwa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cyrax_02,
не понимаю, на кой Вам этот select()
почему просто не сделать
alert('Field content: ' + $('#field').val());
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39062165
Cyrax_02
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторпочему просто не сделать
alert('Field content: ' + $('#field').val()); Я родился (C)

Gwa , прочитайте самый первый пост. И вам станет понятно, почему val() не годится...
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39062220
Gwa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cyrax_02,
Тестовый пример прекрасно работает..
А в самом первом посте у Вас пурга какая-то, там нарушен синтаксис поэтому и результат пустой
...
Рейтинг: 0 / 0
(jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
    #39062262
kunaksergey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
GwaCyrax_02,
Тестовый пример прекрасно работает..
А в самом первом посте у Вас пурга какая-то, там нарушен синтаксис поэтому и результат пустой
Человек пытается впихнуть в поле то,чего там быть не положено. Даже если броузер это позволяет,с выходом новых версий это исправляется. Даже сейчас различные версии ff работают по разному. Один позволяет вводит текст в поле number другой нет. А писать костыли это не есть хорошо.
...
Рейтинг: 0 / 0
25 сообщений из 33, страница 1 из 2
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / (jquery) При вводе в (input) типа (number) нечисла $(inputId).val() возвр. пустую строку
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]