Рейтинг:
1
Karthik_Mahalingam
Цитата:
Uncaught ReferenceError: getdata не определен
функция getdata заключена в jquery, удалите ее.
$( function getdata(obj) {
и убрать
)
в конце функции.
super_user
я уже делаю эту коррекцию до сих пор никаких маркеров не отображается на карте google когда я проверяю источники jqyery выглядят так
Karthik_Mahalingam
есть ли какая-либо ошибка в окне консоли?
super_user
значит до сих пор я не получил значения в этих строках
t.No = конвертировать.ToString(HttpContext. Current.Сессия ["Нет"]);
t. широта = преобразование.ToSingle(Свойство HttpContext.Тока.Сессия ["Широта"]);
t. долгота = преобразовать.ToSingle(Свойство HttpContext.Тока.Сессия ["Долгота"]);
Karthik_Mahalingam
убедитесь, что вы устанавливаете значения сеанса, прежде чем обращаться к ним
super_user
да в этой строке я получил значения
ДТ.Строк.Добавить(т. Нет, т.Долготы, Т.Широта);
и тогда я пытаюсь сохранить эти значения в сеансе, а затем пытаюсь вызвать этот сеанс в jquery, но я не получил значений в этих строках
t.No = конвертировать.ToString(HttpContext. Current.Сессия ["Нет"]);
t. широта = преобразование.ToSingle(Свойство HttpContext.Тока.Сессия ["Широта"]);
t. долгота = преобразовать.ToSingle(Свойство HttpContext.Тока.Сессия ["Долгота"]);
Karthik_Mahalingam
я думаю, что вы не можете получить доступ к значениям сеанса внутри блока javascript.
используйте вызов ajax для получения значений сеанса с помощью веб-метода.
super_user
вот так ?
$(функция () {
var FID = '<%=Session["FFID"]%>';
var ObID = '<%=Session ["ObjID"]%>';
var No = '<%=Session ["No"]%>';
var longi = ' <%=Session ["долгота"]% & gt;';
var latit = '<%=Session ["Latitude"]%>';
var obj = {};
об..FID = FFID;
об..Находящемуся =, Находящемуся;
об..нет-нет;
параметр obj.лонги = лонги;
параметр obj.latit = latit;
метода GetData(объект);
возвращать false;
});
функция getdata(obj) {
$.Аякс({
тип: "пост",
url: "home. aspx/mapgriddata",
contentType: "application/json;charset=utf-8",
сведения:в формате JSON.преобразовать в строки(параметр obj),
тип данных: "json",
асинхронные: правда,
кэш: false,
успех: функция (результат) {
window. onload = функция () {
предупреждение ("map2");
отладчик;
var latlng = новый google. maps.Latlng с(12.0895898, 34.099);
отладчик;
var mapOptions = {
центр: Новые google. maps.LatLng(маркеры[0]. lat, маркеры[0]. lng),
Зум: 8,
центр: latlng,
mapTypeId: google. maps.MapTypeId.ДОРОЖНАЯ КАРТА
};
отладчик;
var infoWindow = новый google. maps.InfoWindow();
отладчик;
var map = new google. maps. Map(document. getElementById ("map_canvas"), mapOptions);
отладчик;
for (i = 0; i < obj. length; i++) {
var data = obj[i]
var myLatlng = новый google. maps.Latlng с(параметр obj.latlng с);
var marker = новый google. maps.Маркер({
должность: myLatlng,
карта: карта,
});
отладчик;
(функция (маркер, obj) {
Гугл.карты.событие.метод addlistener(маркер, "клик", функция (е) {
infoWindow.setContent(объект.Фид параметр obj.Нет, кадриров.latit,кадриров.лонги);
infoWindow. open(карта, obj);
});
}) (маркер, данные);
}
}
},
ошибка: функция (ошибка) {
предупреждение(ошибка);
}
});
}
Karthik_Mahalingam
window. onload = функция () {
это бесполезно. удалить его
super_user
значит, все в порядке ?
Karthik_Mahalingam
во всяком случае, вы вызываете этот URL-адрес метода сервера: "home. aspx/mapgriddata",
так что не сдать сессию значений, вместо того, чтобы получить эти значения в методе mapgriddata. КС.
попробуйте жестко закодировать значение и проверить
super_user
ок, я жесткий код значение такой
var FFID = '2012';
var ObjectID = '0';
var RegNo = '2345';
ВАР лонги = '69.84629';
var latit = '21.19055';
но маркеры не отображаются в соответствии со значениями lat и long
Karthik_Mahalingam
можете ли вы опубликовать screeenshot
super_user
да конечно это ссылка на снимок экрана http://i.imgur.com/0yx2sft.png
а это обновленный код jquery
$(функция () {
var FID = '<%=Session["FID"]%>';
ВАР, находящемуся = в '<%=сессии["находящемуся"]%&ГТ;';
var RegNo = '2345';
ВАР лонги = '69.84629';
var latit = '21.19055';
var obj = {};
об..FID = FID;
об..Обид = Обид;
об..нет-нет;
параметр obj.лонги = лонги;
параметр obj.latit = latit;
метода GetData(объект);
возвращать false;
});
функция getdata(obj) {
$.Аякс({
тип: "пост",
url: "home. aspx/mapgriddata",
contentType: "application/json;charset=utf-8",
сведения:в формате JSON.преобразовать в строки(параметр obj),
тип данных: "json",
асинхронные: правда,
кэш: false,
успех: функция (результат) {
// window. onload = функция () {
предупреждение ("map2");
Варе карте;
отладчик;
var latlng = новый google. maps.Latlng с(67.0998546,24.0895898);
отладчик;
var myOptions = {
Зум: 8,
центр: latlng,
mapTypeId: google. maps.MapTypeId.ДОРОЖНАЯ КАРТА
};
отладчик;
map = new google. maps. Map(document. getElementById ("map_canvas"), myOptions);
отладчик;
var marker = новый google. maps.Маркер
(
{
должность: новый google. maps.Latlng с(-38.397, 140.644),
карта: карта,
название: "нажмите на меня"
}
);
отладчик;
for (i = 0; i < obj. length; i++) {
var data = obj[i]
var myLatlng = новый google. maps.Latlng с(параметр obj.latlng с);
var marker = новый google. maps.Маркер({
должность: myLatlng,
карта: карта,
});
отладчик;
(функция (маркер, obj) {
Гугл.карты.событие.метод addlistener(маркер, "клик", функция (е) {
infoWindow.setContent(объект.Фид параметр obj.Нет,кадриров.latit, кадриров.лонги);
infoWindow. open(карта, obj);
});
}) (маркер, данные);
}
отладчик;
Гугл.карты.событие.метод addlistener(маркер, 'нажмите', функция () {
// Вызов открытого метода infoWindow
infowindow. open(карта, маркер);
});
},
ошибка: функция (ошибка) {
предупреждение(ошибка);
}
});
}
Karthik_Mahalingam
собственно, что вы хотите сделать на карте ?
super_user
я хочу отобразить маркеры или любое изображение в соответствии с этими значениями lat и long var longi = '69.84629';
var latit = '21.19055'; если эти значения изменяются, то положение маркера/изображения должно измениться
Karthik_Mahalingam
вы обращались к Google map doc в w3cshool ?
super_user
- нет?? как я это делаю ?
super_user
и когда я нажимаю на это изображение, то появляется небольшое окно содержимого со значениями lat и long ..
Karthik_Mahalingam
все это вы получите по ссылке ниже
super_user
я упомянул грубые значения lat и long
Karthik_Mahalingam
http://www.w3schools.com/graphics/google_maps_reference.asp
Karthik_Mahalingam
видеть это
http://www.w3schools.com/graphics/tryit.asp?filename=trymap_overlays_icon
super_user
хорошо я получил маркер через жестко закодированные значения через этот jquery но проблема в том что я хочу получить значения через метод и все еще есть нулевое значение
$(функция () {
var FID = '<%=Session["FID"]%>';
var ObID = '<%=Session ["ObID"]% & gt;';
var No ='<%=Session ["No"]%>';
var longi = ' <%=Session ["долгота"]% & gt;';
var latit = '<%=Session ["Latitude"]%>';
var obj = {};
об..ФИД = ИДЕНТИФИКАТОР;
об..Обид = Обид;
об..нет-нет;
параметр obj.лонги = лонги;
параметр obj.latit = latit;
метода GetData(объект);
возвращать false;
});
функция getdata(obj) {
$.Аякс({
тип: "пост",
url: "home. aspx/mapgriddata",
contentType: "application/json;charset=utf-8",
сведения:в формате JSON.преобразовать в строки(параметр obj),
тип данных: "json",
асинхронные: правда,
кэш: false,
успех: функция (результат) {
// window. onload = функция () {
предупреждение ("map2");
Варе карте;
отладчик;
var latlng = новый google. maps.Latlng с(27.0895898, 64.0998546);
отладчик;
var myOptions = {
Зум: 8,
центр: latlng,
mapTypeId: google. maps.MapTypeId.ДОРОЖНАЯ КАРТА
};
отладчик;
map = new google. maps. Map(document. getElementById ("map_canvas"), myOptions);
отладчик;
var marker = новый google. maps.Маркер
(
{
должность: новый google. maps.Latlng с(35.19055,57.84629),
карта: карта,
название: "нажмите на меня"
}
);
отладчик;
var infowindow = новый google. maps.InfoWindow({
содержание: 'FID:' +obj.FID,
название: 'tr'
});
Гугл.карты.событие.метод addlistener(маркер, 'нажмите', функция () {
// Вызов открытого метода infoWindow
infowindow. open(карта, маркер);
});
},
ошибка: функция (ошибка) {
предупреждение(ошибка);
}
});
}
общественности статической строки mapgriddata(фид строка,строка, находящемуся)
{
пробовать
{
строковый результат = "";
Фид = свойство HttpContext.Тока.Сессия["FID"].Метод toString();
Обид = Свойство HttpContext.Тока.Сессия ["ObID"].Метод toString();
Сущности w = новые сущности();
Список(spgetdata_fid_Result) ГТ = Вт.spgetdata_fid(фид).Список();
DataTable dt = новый DataTable();
ДТ.Столбцы.Add ("No", typeof (string));
ДТ.Столбцы.Add ("долгота", typeof (float));
ДТ.Столбцы.Add ("Latitude", typeof (float));
foreach (var t в gt)
{
ДТ.Строк.Добавить(т. Нет, т.Долготы, Т.Широта);
t.No = конвертировать.ToString(HttpContext. Current.Сессия ["Нет"]);
t. широта = преобразование.ToSingle(Свойство HttpContext.Тока.Сессия ["Широта"]);
t. долгота = преобразовать.ToSingle(Свойство HttpContext.Тока.Сессия ["Долгота"]);
ДТ.Строк.Добавить(т. Нет, т.Широта, Т.Долготы);
}
результат = DataSetToJSON(dt);
возвращаемый результат;
}
catch (исключение)
Karthik_Mahalingam
не используйте так
var FID = '<%=Session["FID"]%>';
var ObID = '<%=Session ["ObID"]% & gt;';
получить значение из json ajax
super_user
проблема не в этих линиях проблема в этих линиях
var No ='<%=Session ["No"]%>';
var longi = ' <%=Session ["долгота"]% & gt;';
var latit = '<%=Session ["Latitude"]%>';
Karthik_Mahalingam
вот что я говорю, чтение значений сеанса из Javascript не работает..
передайте значения из webmethod в качестве результата.
super_user
как???? @Картик Бангалор
Karthik_Mahalingam
в методе успеха ajax.
вы делали это много раз
super_user
но это не работает я думаю
Karthik_Mahalingam
консольное окно - это ваш друг, который поможет разобраться в том, в чем проблема.
super_user
я пробую 2-3 раза, но не получаю результата
Karthik_Mahalingam
правильное время имеет значение.
разделите задачу на n частей и исправьте ее одну за другой.
super_user
@Karthik Bangalore ok Я закончил с этим .. теперь проблема в том, что есть две записи в сетке dt, но на карте это шоу только 1 запись означает, что на карте нет цикла, так как я зацикливаю этот код .. map
$(функция () {
ВАР нет = ";
var Status = ";
var obj = {};
об..нет-нет;
об..Статус = Статус;
метода GetData(объект);
возвращать false;
});
функция getdata(obj) {
$.Аякс({
тип: "пост",
адрес: "дом.аспн/информация",
contentType: "application/json;charset=utf-8",
данные: "{'id': 'CU-8442'}",
тип данных: "json",
асинхронные: правда,
кэш: false,
успех: функция (результат) {
предупреждение ("map2");
$("#tabledata"). пусто();
ВАР table_data = формат JSON.синтаксический анализ(результат.д).ответ;
console.log(JSON. parse(result. d). response);
$("#tabledata"). пусто();
if (table_data. length > 0) {
$("#tabledata"). append(
"NoLongitudeLatitude");
для (ВАР я = 0; Я &л; table_data.длина; я++) {
if (table_data[i] ! = = null) {
$("#таблицу").добавить("" +
table_data[i][0] + "" +
table_data[i][1] + "" +
table_data[i][2] + "" +
table_data[i][3] + " ");
Status = table_data[i][2];
No = table_data[i][0];
}
}
}
ещё {
$("#tabledata"). скрыть();
}
Варе карте;
отладчик;
var latlng = новый google. maps.Latlng с(24.0895898, 67.0998546);
отладчик;
var myOptions = {
Зум: 8,
центр: latlng,
mapTypeId: google. maps.MapTypeId.ДОРОЖНАЯ КАРТА
};
отладчик;
map = new google. maps. Map(document. getElementById ("map_canvas"), myOptions);
отладчик;
var marker = новый google. maps.Маркер
(
{
должность: новый google. maps.Latlng с(параметр obj.latit,кадриров.лонги),
карта: карта,
название: "нажмите на меня"
}
);
отладчик;
var infowindow = новый google. maps.InfoWindow({
содержание: 'нет:' + нет + 'статус:' + статус,
название: 'tr'
});
Гугл.карты.событие.метод addlistener(маркер, 'нажмите', функция () {
infowindow. open(карта, маркер);
});
},
ошибка: функция (ошибка) {
предупреждение(ошибка);
предупреждение ("ошибка");
}
});
}
Karthik_Mahalingam
во что вы ввязываетесь
console.log(JSON. parse(result. d). response);
super_user
я получаю данные - .. 2 строки
Karthik_Mahalingam
обратитесь к этому и сделайте
http://stackoverflow.com/a/3059129
super_user
я думаю, что я уже сделал это, но это не показывает никакого маркера
успех: функция (результат) {
// window. onload = функция () {
предупреждение ("map2");
$("#tabledata"). пусто();
ВАР table_data = формат JSON.синтаксический анализ(результат.д).ответ;
консоли.журнала(в формате JSON.синтаксический анализ(результат.д));
$("#tabledata"). пусто();
if (table_data. length > 0) {
$("#tabledata"). append(
"NoLongitudeLatitude");
для (ВАР я = 0; Я &л; table_data.длина; я++) {
if (table_data[i] ! = = null) {
$("#таблицу").добавить("" +
table_data[i][0] + "" +
table_data[i][1] + "" +
table_data[i][2] + " ");
Status = table_data[i][2];
No = table_data[i][0];
}
}
}
ещё {
$("#tabledata"). скрыть();
}
var center = новый google. maps.Latlng с(24.0895898, 67.0998546);
ВАР карта = новый Google.карты.Карта(документ.метода getElementById('карта'), {
масштаб: 3,
центр: центр,
mapTypeId: google. maps.MapTypeId.ДОРОЖНАЯ КАРТА
});
маркеры var = [];
для (ВАР я = 0; Я &л; table_data.длина; я++) {
ВАР месте = данных.расположение[я];
var latLng = новый google. maps.LatLng(location.широта,
местоположение.долгота);
var marker = новый google. maps.Маркер({
должность: latLng
});
маркеры. push (маркер);
}
var markerCluster = новый MarkerClusterer(карта, маркеры);
Гугл.карты.событие.addDomListener(окно, "загрузить", и инициализации);
Karthik_Mahalingam
погоду он работает нормально с 1 маркера?
super_user
когда я пробую выше код оба маркера не отображаются
Karthik_Mahalingam
с 1 маркером это работает?
Karthik_Mahalingam
получение какой-либо ошибки в окне консоли при загрузке 2 ?
Karthik_Mahalingam
разместите свой код в js fiddler и поделитесь ссылкой, Я посмотрю, это так запутанно.
super_user
в jsfiddle я думаю, что данные не заполняются .. так что здесь я делюсь отдельными ссылками ..
это ссылка для
1 маркер отображается через этот код
http://www.codesend.com/view/d15d5839083152a217071a168f38c1ef/
и эта ссылка для тех случаев, когда оба маркера не отображаются, а также карта не отображается
http://www.codesend.com/view/dce4c75055bc6fa461f86533c17f40b1/
super_user
хорошо, теперь я закончил с обоими маркерами, а теперь, пожалуйста, скажите мне, как я вызываю id из веб-метода в jquery в этой строке data: "{'id': '442'}",
потому что я жесткий код id в этой строке, но я хочу id через webmethod
Karthik_Mahalingam
а как насчет возврата веб-метода ajax?
super_user
Я пытаюсь это сделать, чтобы получить идентификатор от webmethod
$(функция () {
var RegNo = ";
var Status = ";
ВАР латит = ";
ВАР лонги = ";
ВАР ID = '&л;%=сессии["ИД"]%&ГТ;'.вал();
var obj = {};
об..ИДЕНТИФИКАТОР=ИДЕНТИФИКАТОР;
метода GetData(объект);
возвращать false;
});
функция getdata(obj) {
$.Аякс({
тип: "пост",
адрес: "дом.аспн/информация",
contentType: "application/json;charset=utf-8",
сведения:в формате JSON.преобразовать в строки(параметр obj.Идентификатор),
тип данных: "json",
асинхронные: правда,
кэш: false,
успех: функция (результат) {
// код карты
},
ошибка: функция (ошибка) {
предупреждение(ошибка);
предупреждение ("ошибка");
}
});
}
я стараюсь передать ID через веб-метод, при этом данные линии:в формате JSON.преобразовать в строки(параметр obj.Идентификатор),
когда я это делаю, на консоли появляется ошибка
Uncaught TypeError: "442". val-это не функция
и когда я удаляю .val (), это показывает ошибку
Не удалось загрузить ресурс: сервер ответил со статусом 500 (Внутренняя ошибка сервера)
Karthik_Mahalingam
я нахожусь в офисе, я отлажу этот код дома и сообщу вам о проблеме.
super_user
$(функция () {
var FID = '2012';
var ObID = '0';
ВАР нет = ";
ВАР лонги = ";
ВАР латит = ";
var obj = {};
об..FID = FID;
об..Обид = Обид;
об..нет-нет;
параметр obj.лонги = лонги;
параметр obj.latit = latit;
метода GetData(объект);
возвращать false;
});
Karthik_Mahalingam
подпись пожалуйста