2012-12-11 40 views
2

我有一堆的文本框(街道,號碼,城市,郵政編碼等)和AJAX模式,彈出式擴展一個asp.net地址形式。如何使用模式彈出填表?

當按下一個按鈕,一個地址簿顯示(在模式彈出),用戶可以搜索和選擇他的註冊地址之一。這個列表是使用GridView實現的,效果很好。每一行都有一個鏈接按鈕,這樣的:

<asp:LinkButton ID="AddressNameLinkButton" runat="server" 
       CausesValidation="false" 
       CommandArgument='<%# Container.DataItem("ADDRESS_ID") %>' 
       CommandName="Select" 
       Text='<%# Eval("ADDRESS_NAME")%>' /> 

當按下按鈕時,該代碼隱藏運行:

Protected Sub AddressGridView_RowCommand(...) Handles AddressGridView.RowCommand 
    Dim ADDRESS_ID As Long = e.CommandArgument 
    If e.CommandName.CompareTo("Select") = 0 Then 
     'Some code that retrieves the information 
     'of the selected address goes here. 
     CityTextBox.Text = City 
     PostalCodeTextBox.Text = PostalCode 
     'Etc. Etc. 
     SearchModalPopupExtender.Hide() 
    End If 
End Sub 

問題是,儘管此代碼隱藏模式,彈出,它不填寫地址表單。

如何填充從模式彈出形式?

+0

你有一個updatePanel周圍的一些代碼?這可能是部分更新,所以你不能看到更新的控制。 – nunespascal

+0

是的!這是問題,謝謝! –

回答

1

的問題是,在模型彈出GridView控件是一個UpdatePanel內(感謝nunespascal指出了這一點)。

爲了解決這個問題,我添加以下代碼:

Protected Sub AddressGridView_RowDataBound(...) Handles AddressGridView.RowDataBound 
    Dim AddressNameLinkButton As LinkButton = e.Row.FindControl("AddressNameLinkButton") 
    ScriptManager.GetCurrent(Page).RegisterPostBackControl(AddressNameLinkButton) 
End Sub 

現在,當我按在GridView,模態,彈出關閉和地址形式了LinkBut​​ton的一個充滿