2016-06-16 27 views
0

このjavascriptはポップアップを必要に応じて開きますが、空であるためポイントに作用します。関数の2つの欠損値を渡す構文は何ですか? 2つの値は、gridviewから取得する必要があります(lblEVENT_DATE & BoundFieldとDataField DETAILS)。表示されるように、この関数はモーダルポップアップを開き、gridviewからの入力ボタンによって呼び出されます。 関数の3番目の必須値はハードコードされています。GridViewで呼び出されたJavascript関数にバインドされた値を渡す

function OpenPopup(datetime, text, mode) { 
     if (mode == 'track') { 
      $('#lblDateTime').text(datetime); 
      $('#lblTrackingNotes').text(text); 
      $("#divTrackingNotes").dialog({ title: "Tracking Notes", width: 700, modal: true, }); 
     } 
     else { 
      $('#lblRCAComments').text(text); 
      $("#divRCAComments").dialog({ title: "Comments", width: 700, modal: true, }); 
     } 
    } 


<asp:GridView ID="GridRootCause" ClientIDMode="Static" CssClass="dataTable fullWidth spaceAfter2" runat="server" AutoGenerateColumns="False" DataKeyNames="ROOT_CAUSE_IDENTIFIER,RECORD_IDENTIFIER"> 
<Columns> 
    <asp:BoundField DataField="RECORD_IDENTIFIER" ItemStyle-CssClass="hiddenColumn" HeaderStyle-CssClass="hiddenColumn" />  
    <asp:TemplateField HeaderText="Event Date"> 
     <ItemTemplate> 
      <asp:Label ID="lblEVENT_DATE" runat="server" Text='<%# CDate(Eval("EVENT_DATE")).ToString("ddd") & " " & Eval("EVENT_DATE")%>' /> 
     </ItemTemplate> 
    </asp:TemplateField> 
    <asp:TemplateField HeaderText="Details"> 
     <ItemTemplate> 
      <asp:Label Visible="false" Wrap="true" ID="lblDetails" runat="server" /> 
      <input type="button" class="innerButton buttonBlue" id="btnTrackingNotes" onclick="javascript: OpenPopup('','','track');" Visible="false" runat="server" value="Tracking Notes" /> 
     </ItemTemplate> 
    </asp:TemplateField> 
    <asp:TemplateField HeaderText="Comments" HeaderStyle-CssClass="width150">         
     <ItemTemplate> 
      <input type="button" class="innerButton buttonBlue" id="btnComments" onclick="javascript: OpenPopup('','','comm');" Visible="false" runat="server" value="Comments" />         
     </ItemTemplate> 
    </asp:TemplateField> 
</Columns> 
</asp:GridView> 

答えて

2

データフィールドはEVENT_DATEDETAILSている場合は、このようonclickイベントハンドラを設定することができます。このコードのトリッキーな部分の

onclick='<%# string.Format("OpenPopup({0}{1:ddd}{0}, {0}{2}{0}, {0}track{0});", (char)39, Eval("EVENT_DATE"), Eval("DETAILS")) %>' 

一つは、フォーマット文字列内の単一引用符を挿入しています外側の引用符との衝突を回避します。このため、私は(char)39をC#に、chr(39)をVB.NETに使用しています。

関連する問題