2017-02-01 6 views
0

У меня есть gridview, который содержит два (2) ASPxComboBox, значение второго поля Combo основано на значении первого поля со списком. Демо-версии DevExpress и образец немного сложны и требуют много времени, поэтому я думаю об обходном пути, что, когда выбранный элемент комбинированного блока является обменом, значение будет храниться в ярлыке. И я получу значение метки для хранения в раскрывающемся списке. Но я не знаю, как передать значение метки на стороне сервера. Любая помощь приветствуется. Спасибо!Как передать значение Javascript для метки на стороне сервера

Вот мой код.

FrontEnd

<asp:Label ID="LblProduct" runat="server" Text="Label"></asp:Label> 

<dx:ASPxGridView ID="ASPxGridView2" OnRowDataBound="ASPxGridView2_RowDataBound" ClientInstanceName="GridV" runat="server" AutoGenerateColumns="False" DataSourceID="forprod" KeyFieldName = "ppdtl_no"> 
<columns> 
<dx:GridViewDataTextColumn FieldName="fld_product" Name="Dd_product" ShowInCustomizationForm="true" VisibleIndex="3"> 
<SettingsHeaderFilter> 
<DateRangePickerSettings EditFormatString="" /> 
</SettingsHeaderFilter> 
<EditItemTemplate> 
<dx:ASPxComboBox ID="ASPxComboBoxProduct" runat="server" DataSourceID="pp_prod" TextField="pp_ppname" ValueField="pp_ppcode"> 
<ClientSideEvents SelectedIndexChanged="function(s, e) { OnProductChanged(s); }"></ClientSideEvents> 
</dx:ASPxComboBox> 
</EditItemTemplate> 
</dx:GridViewDataTextColumn> 


<dx:GridViewDataComboBoxColumn FieldName="fld_type" Name="dd_type" ShowInCustomizationForm="true" VisibleIndex="4"> 
<SettingsHeaderFilter> 
<DateRangePickerSettings EditFormatString="" /> 
</SettingsHeaderFilter> 
<EditItemTemplate> 
<dx:ASPxComboBox ID="ASPxComboBoxType" runat="server" DataSourceID="pp_type" TextField="pp_codetype" ValueField="pp_codetype"> 
</dx:ASPxComboBox> 
</EditItemTemplate> 
</dx:GridViewDataComboBoxColumn> 
</columns> 
</ASPxGridView> 

JavaScript

function OnProductChanged(s, e) { 
      var selected_index = s.lastSuccessValue; 
      var aa = document.getElementById('LblProduct').innerText = selected_index; 

     } 
     onload = OnProductChanged; 

ответ

0

Вы должны использовать ClientID свойства любого элемента вы бежите на уровне сервера в вашем селекторе. Для этого вам нужно написать JavaScript внутри файла с вашей меткой, а затем использовать <%= LblProduct.ClientID %>.

<script type="text/javascript"> 
    document.getElementById('<%= LblProduct.ClientID %>'); 
</script> 

Посмотрите на свой проект во время выполнения с Осмотреть - вы увидите идентификатор после компиляции не LblProduct, но что-то похожее на ProjectName_PageName_ContentPlaceHolderName_LblProduct.

Вы также можете просто скопировать-вставить, хотя он не может быть изменен.

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

  • Нет связанных вопросов^_^