powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Ткните носом. Как отдалить JavaScript
9 сообщений из 9, страница 1 из 1
Ткните носом. Как отдалить JavaScript
    #33613101
Alex Tyutyunik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где что в VS нужно нажать(включить) чтобы я мог отлаживать свой JavaScript ?
Спасибо
...
Рейтинг: 0 / 0
Ткните носом. Как отдалить JavaScript
    #33613142
Alex Tyutyunik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Или помогите пожалуста с javascript'ом
а то мне выдает ошибку object expected, а я даже не могу посмотреть в чем же дело.

Мне надо для полей текстовых, вставить запятые как символы разделители денежные, типа 25,000,000.

на фокусе надо запятые убрать, при потере фокуса запятые вернуть.
я вот написал пару функций

Код: plaintext
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.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
function money_focus(objid)
		{
			var obj=document.getElementById(objid)
			
			var v=obj.value
			var ec= 0 
			var ec_value = ""
			while(ec<v.length)
			{
				if(v.charAt(ec) >= '0' && v.charAt(ec) <='9') ec_value += v[ec]
				ec++
			}
			do
			obj.value = ec_value
		}
		function money_blur(objid)
		{
			var obj=document.getElementById(objid)
			var v=obj.value
			var ec= 0 
			var ec_value = ""
			var div = v %  3 
			if(div >  0 )
			{
				ec_value += v.substring( 0 ,div) + ","
			}
			while(ec+div+ 3  < v.length)
			{
				ec_value += v.substring(ec+div,ec+div+ 3 ) + ","
				ec = ec +  3 
			}do
			ec_value = ec_value.substring( 0 ,ec_value.length- 2 )
			obj.value = ec_value
		}

и это вызывается вот так
<asp:textbox onkeypress="onKeyPress_OnlyDigits()" onfocus="money_focus('TB_C_GrossSales')" onblur="money_blur('TB_C_GrossSales')" id="TB_C_GrossSales" бла бла бла></asp:textbox>
...
Рейтинг: 0 / 0
Ткните носом. Как отдалить JavaScript
    #33613240
Фотография vladgrig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Script Debugger for Windows NT 4.0 and Later - если винда лицензионная ;) - если наоборот - кричи помогу...
P.S. кстати - глупое замечание
Код: plaintext
1.
<asp:textbox onkeypress="onKeyPress_OnlyDigits()" onfocus="money_focus('TB_C_GrossSales')" onblur="money_blur('TB_C_GrossSales')" id="TB_C_GrossSales" бла бла бла></asp:textbox>
вот почему то кажеться что у этого контрола нет такого обработчика onkeypress
а вот у такого - есть
Код: plaintext
<input id="Text1" type="text" onkeypress="" runat="server" />
...
Рейтинг: 0 / 0
Ткните носом. Как отдалить JavaScript
    #33613722
Фотография profil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Ткните носом. Как отдалить JavaScript
    #33614205
Alex Tyutyunik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зря кажется, у меня работает onkeypress...

Включил отладку. у меня даже в функцию отладчик не входит.
Подсвечивает money_focus('TB_C_GrossSales') в описании текстбокса, в функцию не заходит. весь js в отдельном файле, путь к нему правильный.

Microsoft JScript Runtime Error: Object expected.

UPDATE: Знаете, что самое смешное...
у меня перестал выдавать ошибку после того как я пару раз запустил страницу в Firefox'e :))
Работает неправильно, но работает :)
...
Рейтинг: 0 / 0
Ткните носом. Как отдалить JavaScript
    #33614218
Фотография profil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
по скрипту:
не удивительно, что объект не найден
что бы передать ссылку на серверный контрол используйте TB_C_GrossSales.ClientID,
а если из обработчика контрола - тогда используйте this
т.е. money_blur(this)
причем, как правильно заметил vladgrig, Ваша конструкция вообще не рабочая - либо воспользуйтесь его советом, либо в codebehind добавляейт соответствующие атрибуты

посмотрите похожее обсуждение: /topic/266419#2396140

ps. иногда все же полезно, смотреть html, который получается на выходе ( V iew Source, я имею ввиду))
...
Рейтинг: 0 / 0
Ткните носом. Как отдалить JavaScript
    #33614339
Alex Tyutyunik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
profil, удивительно, но у меня работает сейчас.
были правда математические ошибки в коде, но я подправил теперь работает.
спасибо за текст как включить отладку.

Да заодно вопрос. эти 2 функции надо использовать для всех полей, в которые вводятся суммы денежные (не для одного какого-то поля).
Сейчас у меня работает для всех полей.
Но на будущее хочется знать, как правильно использовать ClientID и this тоже , чтоб функция на JS универсально работала со всеми контролами что ее вызывают.
...
Рейтинг: 0 / 0
Ткните носом. Как отдалить JavaScript
    #33614388
Фотография profil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в приведенной ссылке есть ответы на все волнующие вас вопросы.
на всяк:
onfocus="money_focus(this)"
Код: plaintext
1.
2.
3.
4.
function money_focus(obj)
		{
    var v=obj.value
    ...
 }


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Ткните носом. Как отдалить JavaScript
    #33614498
Alex Tyutyunik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спачибо, работает.
И маленький вопрос, на завершение.
Я хочу поставить позицию курсора на конец строки.
Сделав поиск здесь на сайте, добавил конструкцию obj.value += ""
но не помогает, у меня курсор сначала ставится в конце, потом прыгает в начало. может дело в том что именно в функции по onfocus() я и делаю это... где ж тогда делать.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Ткните носом. Как отдалить JavaScript
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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