Клуб API Карт

Не работает $.ajax в jquery

mikeles87
1 февраля 2011, 18:38

Вообщем после загрузки балуна $.ajax  не работает

Собственно вот так открывается балун

YMaps.Events.observe(map, map.Events.Click, function (map, mEvent) 

{

points = mEvent.getGeoPoint() 

                var myHtml = '<table width="100" border="0" cellspacing="0" cellpadding="0"><tr><td><select name="region_list" class="input" id="region_list"><option value="1">1</option></select></td></tr><tr><td><select name="city_list" class="input" id="city_list"><option value="1">1</option></select></td></tr><tr><td><label><select name="street_list" class="input" id="street_list"><option value="1">1</option></select></td></tr><tr><td><select name="house_list" class="input" id="house_list"><option value="1">1</option></select></td></tr><tr><td><input type="submit" name="btn_save" id="btn_save" value="Запомнить" /></td></tr></table>'+'Значение: ' + points

                map.openBalloon(mEvent.getGeoPoint(), myHtml);

 var R_ID =""; //ИД Региона

 var C_ID =""; //ИД Города

 var  S_ID =""; //ИД улицы

  var  H_ID =""; //ИД улицы

 load_category("region_list","region","1")

  $('#region_list').change(function(){

  //Загружаем  

 

select город

R_ID = $("#region_list option:selected").val()  

load_category("city_list","city",R_ID) 

}) 

 

 

  $('#city_list').change(function(){

 //Загружаем select улицу

  C_ID = $("#city_list option:selected").val() 

 

load_category("street_list","street",C_ID)

 })

$('#street_list').change(function(){

 //Загружаем  

 

select дом

  S_ID = $("#street_list option:selected").val()

 load_category("house_list","house",S_ID) 

 })

H_ID = $("#house_list option:selected").val()

//При нажатии отправляем POINTS и IDs региона, города, улицы, дома

$('#btn_save').click(function(){ 

save_build(R_ID,C_ID,S_ID,H_ID,points)

 })

                 });

Все загружается, подгружается и все хорошо. Но в функции отправки данных не работает $.ajax 

function  save_build(R, C, S, H, points)

{

//R - ИД регион

//C - ИД улицы

//S - ИД улицы

//H - ИД дома

//points - долгота, широта

ids = R+","+C+","+S+","+H

alert(ids+"points:"+points)

$.ajax({

  url: "../function/CRUD_address_load.php",

  type: 'post',

  dataType: 'json',

  data: ({id:ids, point:points, type_op:"W"}),

  success: function(json)

  { alert(json.POINTS)  }   }) }

 

alert(json.POINTS)Ответ в JSON 

Если функцию использовать отдельно, то есть кнопку создать не создаваемую javascript, то все работает.Кто знает, где копать?

9 комментариев
Подписаться на комментарии к посту
Ссылка на страницу будет полезнее чем код
делаю на локале
Я бы поставил breakpoint в файербаге и посмотрел
выполняется ли эта функция save_build.

Затем я бы посмотрел уходит ли XHR на сервер и что туда уходит и что приходит.
ну либо кроме success добавить еще и error
чтобы обрабатывал ошибки XHR
 alert(ids+"points:"+points) , отзывается




Если эту функцию использовать с кнопкой не создаваемой через JS(не входящей в карту). То все уходит и приходит.


Но если через мой сценарий, то походу не получает ответа...







а запрос то уходит?
еще там наверное надо event.preventDefault() делать
тк кнопка типа сабмит.
к сожалению указанный адрес мертв
Работает только таким образом:


x = mEvent.getGeoPoint().getX()
 y =  mEvent.getGeoPoint().getY()


points = x+","+y

В остальных случаях не хочет передавать координаты через mEvent.getGeoPoint()

В функцию передает, а через AJAX не хочет
getGeoPoint().toString()
?