2012-02-06 73 views
0

我有一個用戶控制:如何從JavaScript上的屬性用戶控件獲取數據?

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="Autocomplite.ascx.cs" Inherits="Application.Controls.Autocomplite" %> 

<script type="text/javascript" src="../Scripts/Autocomplite.js"></script> 
<img alt="" src="Images/Common/transfer1.png" style="cursor:pointer;" onclick='SelectInfo(this); return false;' /> 

與性能:

public partial class Autocomplite : System.Web.UI.UserControl 
    { 
     protected void Page_Load(object sender, EventArgs e) 
     {    

     } 

     private string tableDataSourse; 
     public string TableDataSourse 
     { 
      get { return tableDataSourse; } 
      set { tableDataSourse = value; } 
     } 

     private string positionId; 
     public string PositionId 
     { 
      get { return positionId; } 
      set { positionId = value; } 
     } 
    } 

我註冊頁面上,該控制像這樣運行:

<%@ Register TagPrefix="apress" TagName="Autocomplite" Src="~/Controls/Autocomplite.ascx" %> 
... 
<apress:Autocomplite ID="AutoTextBox1" runat="server" TableDataSourse="DataSet" PositionId="NewOrderArticleCode" /> 

在Autocomplite.js(JavaScript的客戶端)在SelectInfo函數中,我嘗試獲取此屬性:

function SelectInfo(obj) { 
    if (obj != null) { 
    // expected that obj have this properties 
    } 
} 

回答

0

您應該將這些屬性的值呈現爲html元素或屬性(例如輸入元素或圖像元素的自定義屬性)。那麼你可以通過客戶端代碼獲取這些值。

再現控制級屬性成HTML代碼:

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="Autocomplite.ascx.cs" Inherits="Application.Controls.Autocomplite" %> 
<script type="text/javascript" src="../Scripts/Autocomplite.js"></script> 

<img alt="" src="Images/Common/transfer1.png" 
style="cursor:pointer;" onclick='SelectInfo(this); return false;' 
data-property1='<%= TableDataSourse %>' data-property2='<%= PositionId %>' /> 

訪問呈現屬性:

function SelectInfo(obj) { 
    return $(obj).attr('data-property1') ; 
    } 
} 
相關問題