Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Ошибка в объекте / 8 сообщений из 8, страница 1 из 1
18.11.2007, 11:47
    #34947235
danilov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в объекте
Разбираюсь с объектами в JS. Такой вот простенький объект:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
function SaggestSearch(select_id, query_string_id, div_result_id, url) {
  this.select_id = select_id;                        // id поля select
  this.query_string_id = query_string_id;   // id поля input type=text
  this.div_result_id = div_result_id;            // id поля div
  this._url = url;                                           //адрес backend

  this.flag_on_query_string  =  0 ; // находимся в строке запроса

  this._sq = document.getElementById(this.query_string_id); // объект "строка поиска". (search query) <input type=text>
    this._sq.autocomplete="off";
    this._sq.onclick = function () {this.onQueryString( 1 )}

  this.onQueryString = function (a) {
    this.flag_on_query_string = a;
  }
}

Почему при событии "this._sq.onclick" выскакивает ошибка "this.onQueryString is not a function"
...
Рейтинг: 0 / 0
18.11.2007, 13:12
    #34947327
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в объекте
Потому что this.onQueryString - свойство.
...
Рейтинг: 0 / 0
18.11.2007, 13:34
    #34947343
agrasoff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в объекте
AntonariyПотому что this.onQueryString - свойство.надо же.. не лучше ль промолчать, чем говорить такую глупость?

Код: plaintext
1.
2.
3.
4.
5.
this._sq.onclick = function () {
  this.onQueryString(1);
  // this здесь указывает на "владельца" события onclick, то есть на <input />
  // который конечно же не имеет такой функции (onQueryString)
};
...
Рейтинг: 0 / 0
18.11.2007, 14:06
    #34947361
danilov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в объекте
А как мне указать на ту функцию "onQueryString", которая у меня описана ниже?
...
Рейтинг: 0 / 0
18.11.2007, 15:28
    #34947420
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в объекте
Ай, да, сглупил, не подумал.
...
Рейтинг: 0 / 0
18.11.2007, 20:59
    #34947620
IDVsbruck
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в объекте
Странно, что навигатор не выдает ошибку (или выдает? ;)) ... у меня в подобных случаях в ИЕ появляется желтый треугольник в строке статусаЮ, а фаейфокс в стеке ошибок показывает фатальную ошибку.
После строки
this._sq.onclick = function () {this.onQueryString(1)}
надо поставить точку с запятой.
И на всякий случай описать onQueryString до описания onclick.
...
Рейтинг: 0 / 0
18.11.2007, 22:15
    #34947674
agrasoff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в объекте
IDVsbruckСтранно, что навигатор не выдает ошибку (или выдает? ;)) ... у меня в подобных случаях в ИЕ появляется желтый треугольник в строке статусаЮ, а фаейфокс в стеке ошибок показывает фатальную ошибку.
После строки
this._sq.onclick = function () {this.onQueryString(1)}
надо поставить точку с запятой.
И на всякий случай описать onQueryString до описания onclick.ужас какой...

я еще подожду советов, посмотрю на весь это паноптикум, а потом дам правильное решение. если его не будет.
...
Рейтинг: 0 / 0
18.11.2007, 23:06
    #34947709
belugin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в объекте
Код: plaintext
1.
2.
that = this;
this._sq.onclick = function () {that.onQueryString( 1 )}
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Ошибка в объекте / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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