2012-05-24 3 views
0

У меня есть два столбца в таблице, выпадающее меню 'ddlModelNumber' зависит от выбранного значения 'ddlServicerOrg'. Данные в 'ddlServicerOrg' очень большие, поэтому я не хочу, чтобы он отображался каждый раз, когда я меняю выбранный элемент. Я хочу загрузить данные в 'ddlModelNumber' на основе выбранного значения в 'ddlServicerOrg' без использования jquery: ajax. Итак, OnChange = "_ doPostBack ('pnlModel', '');" правильный способ сделать это? Я не хочу, чтобы большие объемы данных возвращались снова и снова для'ddlServicerOrg '. Ниже приведен код.Обновление обновляемой панели без обратной передачи

   <td> 
        <asp:DropDownList ID="ddlServicerOrg" runat="server" DataTextField="ListText" DataValueField="ID" 
         OnInit="ddlServicerOrg_Init" OnDataBound="ddlServicerOrg_DataBound" OnSelectedIndexChanged="ddlServicerOrg_IndexChanged" 
         AutoPostBack="false" AppendDataBoundItems="True" DataSourceID="ServiceLocationOrgODS" OnChange="_doPostBack('pnlModel','');"> 
         <asp:ListItem></asp:ListItem> 
        </asp:DropDownList> 
       </td> 
       <td> 
       <asp:UpdatePanel ID="pnlModel" runat="server"> 
       <ContentTemplate> 
        <asp:DropDownList ID="ddlModelNumber" runat="server" AutoPostBack="false" DataSource='<%# GetServicedModelforServicePartner() %>' 
         DataTextField="Text" DataValueField="Value" AppendDataBoundItems="True" OnInit="ddlModelNumber_Init" OnDataBound="ddlModelNumber_DataBound" Enabled="false"> 
         <asp:ListItem></asp:ListItem> 
        </asp:DropDownList> 
        </ContentTemplate> 
        </asp:UpdatePanel> 
       </td> 
+0

его невозможно, чтобы сделать то, что вы просите, вам нужно сделать свой полностью настраиваемый рендеринг таблицы ajax. – Aristos

+0

Как насчет установки триггеров UpdatePanel в этом выпадающем списке с обратной передачей dropDown как «false»? – user1414292

+0

вы можете сломать окно просмотра панели обновления. – Aristos

ответ

0

Вы можете сделать это с помощью JavaScript. Вы могли бы, чтобы selectedIndexChanged из combobox записывал значение в скрытое поле внутри и панель обновления, в котором находится второе поле со списком. Затем заставьте ajax postback на этой панели обновить содержимое второй combobox. Простым способом сделать это было бы, чтобы ваш combobox selectedindexchanged event щелкнул скрытую кнопку на панели, содержащую второе поле со списком.

http://keylimetie.com/blog/2007/12/3/how-to-make-an-ajax-postback-with-javascript/

Эта связь может выступать в качестве ориентира, чтобы делать то, что вы хотите.