2015-11-16 2 views
0

Я пытаюсь получить данные из модальной формы в родительскую форму, но я не смог ее решить. Я создаю форму jquery modal с помощью webusercontrol и показываю данные в gridview. Я хочу получить выбранные строки и добавить их в сетку в моей родительской форме. Я создаю это с помощью этого кода моего диалога формыasp.net jquery trigger C# функция на клике по модальной форме

function dialogAc(ID1) { 
    $.ajax({ 
     type: 'POST', 
     url: '<%= ResolveUrl("/faturaIrsaliye/FaturaKaydet.aspx/abc") %>', 
     data: "{ID1:'" + ID1 + "' }", 
     dataType: 'json', 
     async: true, 
     cache: false, 
     contentType: 'application/json; charset=utf-8', 
     success: function (msg) { 
      $("#IrsaliyeDetay").append(msg.d); 
     }, 
     failure: function (msg) { 
      alert("Error"); 
     } 
    }); 
    ID11 = ID1; 
    $("#dialog-form").dialog("open"); 
} 

и это мой метод создания.

[WebMethod] 
     public static string abc(String ID1) 
     { 
      string sonuc = ""; 
      Page p = new Page(); 
      UserControl u = (UserControl)p.LoadControl("~/faturaIrsaliye/WebUserControl1.ascx"); 
      WebUserControl1 kk = (u as WebUserControl1); 
      kk.irsaliyeBaslikID = ID1.toInt(); 
      p.Controls.Add(u); 
      StringWriter sw = new StringWriter(); 
      HttpContext.Current.Server.Execute(p, sw, false); 
      sonuc = sw.ToString(); 
      sw.Close(); 
      return sonuc; 
     } 

Everythings is fine до сих пор. Этот последний код не запускает мой другой метод. Я получаю 404 не найдена ошибка.

$(function() { 
    $("#dialog-form").dialog({ 
     autoOpen: false, 
     height: 500, 
     width: 800, 
     modal: true, 
     buttons: [{ 
      text: "Select", 
      click: function() { 
       $.ajax({ 
        type: 'POST', 
        url: '<%= ResolveUrl("/faturaIrsaliye/WebUserControl1.ascx/abc") %>', 
        data: "{}", 
        contentType: 'application/json; charset=utf-8', 
        dataType: 'json', 
        success: function (result) { 
         $('#sonuc').html(result.d); 
         alert("clicked"); 
        }, 
        error: function (response) { 
         alert(response.status + ' ' + response.statusText); 
        } 
       }); 
      }, 
     }, { 
      text: "Close", 
      click: function() { 
       $(this).dialog('close'); 
       //window.location.reload(true); 
       return false; 

      } 
     } 

     ] 
    }); 
}); 

ответ

0

ResolveUrl требует относительный URL, так что-то вроде

ResolveUrl("~/faturaIrsaliye/WebUserControl1.ascx/abc") 
+0

я действительно пытался, что и раньше, но он не работал. Я нашел проблему. Если метод, который я вызываю в aspx-файле, он работает, но если он находится в файле ascx, он возвращает 404 не найденную ошибку. – mehmet

Смежные вопросы