2015-10-03 8 views
0

Я пытаюсь открыть fancybox для открытия с помощью div и gridview после того, как gridview будет заполнен данными.Позвоните Javascript из codebehind asp.net

Я могу либо получить fancybox, чтобы открыть ничего, позвонив fancybox напрямую, или я могу заполнить girdview, не показывая fancybox.

это код, который у меня есть, который просто заполняет girdview в данный момент, так как здесь мне нужно идти.

Любые помощь и помощь.

Метод

Public Sub GetEmailContacts() 

    Session("RoleCode") = 27 

    Dim dt As DataTable 
    Dim dtToBind As DataTable = New DataTable() 

    dtToBind.Columns.Add("Contact Type", Type.GetType("System.String")) 
    dtToBind.Columns.Add("First Name", Type.GetType("System.String")) 
    dtToBind.Columns.Add("Last Name", Type.GetType("System.String")) 
    dtToBind.Columns.Add("Email Address", Type.GetType("System.String")) 


    dt = GetValues() 

    For Each dr As DataRow In dt.Rows 
     dtToBind.Rows.Add(dr(0).ToString(), dr(6).ToString(), dr(7).ToString(), dr(9).ToString()) 
    Next 

    For Each dr As DataRow In dtToBind.Rows 
     Dim toButtonField = New ButtonField() With { 
      .ButtonType = ButtonType.Button, 
      .Text = "To: ", 
      .CommandName = "DoSomething" 
     } 


     Dim ccbuttonField = New ButtonField() With { 
      .ButtonType = ButtonType.Button, 
      .Text = "Cc: ", 
      .CommandName = "DoSomething" 
     } 

     gvContactList.Columns.Add(toButtonField) 
     gvContactList.Columns.Add(ccbuttonField) 

     Exit For 
    Next 

    gvContactList.DataSource = dtToBind 
    gvContactList.DataBind() 

    bttnTo.Attributes.Add("OnClientClick", "#emailAddress") 

End Sub 

LinkButton:

<asp:LinkButton runat="server" cssclass="fancybox" ID="bttnTo" OnClick="getEmailContacts"><span style='font-size: 20px; color: darkgreen'><i id="toEmail" class="fa fa-users sameRow margin10"></i></span></asp:LinkButton> 

это Что в файле JS слишком

$(document).ready(function() { 
$(".fancybox").fancybox({ 
    parent: "form:first" // jQuery selector 
}); 

});

стандартная ссылка

<a href="#emailAddresses" class="fancybox"><span style='font-size: 20px; color: darkgreen'><i id="toEmail" class="fa fa-users sameRow margin10"></i></span></a> 

, как было бы лучше назвать эту функцию?

+0

Проверьте это? http://stackoverflow.com/questions/4848678/how-to-call-javascript-function-from-code-behind –

+0

только что отредактировал мой вопрос, так что покажите мой js-файл –

ответ

1

Здесь обновить Javascript

$(document).ready(function() { 
    fancybox = $(".fancybox").fancybox({ 
     parent: "form:first" // jQuery selector 
    }); 
    if (gridLoaded) { 
     fancybox.click(); 
    } 
}); 

Вы должны gridLoaded к ложным при первой загрузке страницы, а затем, когда вы закончите загрузку сетки установить gridLoaded истина.

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