2017-02-08 15 views
0

내 프로젝트 (http://keith-wood.name/datepick.html)vb.net JQuery와 날짜 선택기 다시 게시

에이 날짜 선택기를 사용하고 내가 asp:TextBox 제어 및 문제에서 사용할 컨트롤은 AutoPostBack은 기능을 상실한다는 것이다.

내가 원하는 것은 선택한 날짜에 연결된 gridview를 업데이트하고이 특정 datepicker를 사용하기 전에 작동했으나 여러 가지 이유로 datepicker를 변경해야했습니다.

날짜를 변경하거나 드롭 다운에서 사용자를 선택하면 gridview가 업데이트됩니다. 내 코드

관련 상품 :

<script language="javascript" type="text/javascript"> 
    $(document).ready(function() { $('#txtData').datepick({ dateFormat: 'dd/mm/yyyy'}); 
</script> 

다음은 INSIDE UPDATE 패널 스크립트 MANAGER가 게시 아마도 제어하기 때문에, 소성되지 않은 PAGE

<div class="generic"> 
    <div class="panel"> 
     <div class="title"><h1>Chiamate del giorno</h1></div> 
      <div > 
       <asp:TextBox runat="server" ID="txtData" CssClass="calendarTxt" placeholder="Data" BorderStyle="Solid" BorderColor="#d13f31" BorderWidth="2px" required="required" AutoPostBack="true"></asp:TextBox> 
       <asp:DropDownList ID="ddlUtenti" runat="server" AppendDataBoundItems="true" CssClass="dropdown" placeholder="Scegli a chi riassegnare la chiamata" AutoPostBack="true" OnSelectedIndexChanged="ddlUtenti_SelectedIndexChanged"> 
     <asp:ListItem Value="-1">Tutti</asp:ListItem> 
    </asp:DropDownList> 
      </div> 


     <br /> 
     <div class="content"> 
      <div id="divChiamateGiorno" class="scrollDiv" > 
      <asp:GridView ID="grdChiamateGiorno" runat="server" AutoGenerateColumns="False" DataKeyNames="idchia,dalle,alle,idstato" DataSourceID="SqlDataSource1" AllowSorting="True" CssClass="tablestyle" > 
       <AlternatingRowStyle BackColor="WhiteSmoke" CssClass="altrowstyle"/> 
       <FooterStyle BackColor="#CCCC99" ForeColor="Black" /> 
       <HeaderStyle Font-Bold="True" BackColor="LightGray" HorizontalAlign="Center" VerticalAlign="Middle" Height="30px" CssClass="headerstyle" /> 
       <RowStyle CssClass="rowstyle" /> 

       <Columns> 
        <asp:BoundField DataField="tecnico" HeaderText="Tecnico" SortExpression="tecnico" /> 
        <asp:BoundField DataField="ragsoc" HeaderText="Cliente" SortExpression="ragsoc" ItemStyle-Width="30%" /> 
        <asp:BoundField DataField="rdescr" HeaderText="Richiesta" SortExpression="rdescr" ItemStyle-Width="50%" /> 
        <asp:BoundField DataField="prior" HeaderText="Priorità" SortExpression="prior" ItemStyle-HorizontalAlign="Center" > 
        <ItemStyle HorizontalAlign="Center" /> 
        </asp:BoundField> 
        <asp:BoundField DataField="app" HeaderText="Appuntamento" SortExpression="app" ItemStyle-HorizontalAlign="Center" > 
        <ItemStyle HorizontalAlign="Center" /> 
        </asp:BoundField> 
        <asp:BoundField DataField="assremota" HeaderText="Remoto" SortExpression="assremota" ItemStyle-HorizontalAlign="Center" > 
        <ItemStyle HorizontalAlign="Center" /> 
        </asp:BoundField> 
        <asp:BoundField DataField="idchia" HeaderText="idchia" InsertVisible="False" ReadOnly="True" SortExpression="idchia" Visible="false" /> 
        <asp:BoundField DataField="tipo" HeaderText="tipo" SortExpression="tipo" Visible="false" /> 
        <asp:BoundField DataField="rforo" HeaderText="rforo" SortExpression="rforo" Visible="false" /> 
        <asp:BoundField DataField="dalle" HeaderText="dalle" SortExpression="dalle" Visible="false" /> 
        <asp:BoundField DataField="alle" HeaderText="alle" SortExpression="alle" visible="false"/> 
        <asp:BoundField DataField="idstato" HeaderText="idstato" SortExpression="idstato" visible="false"/> 
        <asp:TemplateField HeaderText=""> 
         <ItemTemplate> 
    <div class="clearing"></div> 

<div class="tooltip"> 
    <i id="collapse3" runat="server" class="fa fa-caret-square-o-left fa-lg" aria-hidden="true"></i> 
    <span class="tooltiptext" id="litGestioneGiorn" runat="server"></span> 
    </div> 
         </ItemTemplate> 

        </asp:TemplateField> 

       </Columns> 

      </asp:GridView> 
       </div> 

      <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:dbVulcanoConnectionString %>" SelectCommand="select utenti.nome as tecnico, Richieste.IDRic as idchia, richieste.descr as rdescr, ISNULL(richieste.assistremota,0) as assremota, Clienti.RagSociale as ragsoc, richieste.descr as descr, richieste.priorita as prior, richieste.tipo as tipo, richieste.rforologio as rforo, ISNULL(statoric.appuntamento,0) as app, ISNULL(statoric.oradalle,0) as dalle, ISNULL(statoric.oraalle,0) as alle, statoric.ID as idstato from clienti inner join richieste on clienti.idcliente = richieste.rfcliente inner join statoric on statoric.rfric = richieste.idric inner join stati on stati.idstato = statoric.rfstato inner join utenti on utenti.idutente=statoric.rftecnico where statoric.attuale = 1 and statoric.rfstato &lt; 14 and statoric.dataass = @data and (@tecnico = -1 or statoric.rftecnico = @tecnico) order by app desc, oraalle asc, prior desc"> 
       <SelectParameters> 
        <asp:ControlParameter ControlID="txtData" DefaultValue="17/01/2017" Name="data" PropertyName="Text" Type="DateTime" /> 
        <asp:ControlParameter ControlID="ddlUtenti" DefaultValue="0" Name="tecnico" PropertyName="SelectedValue" Type="Int32" /> 
       </SelectParameters> 
      </asp:SqlDataSource> 
      <p> 
       &nbsp; 
      </p> 
      <table border="0" cellspacing="0" cellpadding="0" style="width: 100%"> 
    <tr> 
     <td></td> 
     <td align="right"> 
      <input runat="server" name="Stampa" type="button" class="gbutton" id="btnStampa" value="Stampa" onclick="printdiv('divChiamateGiorno');" /> 
     </td> 
    </tr> 
</table> 
     </div> 
    </div> 
</div> 
+0

그는 그의 페이지에서 v5.1.0의'필드 값을 갱신 할 때 변경 이벤트를 트리거하십시오. '라고 말하면서 이것은 당신의 코드에서 발생하지 않는 것 같습니다. 'onChange' 또는'trigger change' 이벤트를 사용하여 수동으로 변경 이벤트를 시도 할 수 있습니다. – Obsidian

+0

예, 간단한 다시 게시를 수행하려면 어떻게해야합니까? Autopostback = true와 같은 결과. –

답변

0

선언된다 내용이 변경되었음을 알지 못하며 컨트롤이 다시 게시를 수행하게하는 변경 이벤트입니다. 당신이 경우 마지막으로

$('.calendarTxt').datepick({ 
    onSelect: function (dateText) { 
     $(this).trigger('change'); 
    } 
    }); 

$(document).ready(function() { $('#txtData').datepick({ 
    dateFormat: 'dd/mm/yyyy', 
    onSelect: function (dateText) { 
    $(this).trigger('change'); 
    } 
}); 

: 나는 완전히 플러그인을 조사하지만, jQuery를 UI 구성 날짜 선택기에서 내가 직접 콜백 트리거 변경 이벤트를 수행 할 onslect 명령을 사용하여를 havent

id 대신 css 클래스를 사용하면 마스터 스크립트 페이지에서이 코드를 트리거 할 수 있습니다. 즉, 클래스를 추가하기 만하면되는 모든 날짜 입력 컨트롤에 코드를 넣을 필요가 없습니다.

+0

너무 간단! 작동 중! CSS 팁을 가져 주셔서 감사합니다. –