我想請點擊此鏈接中的GridView檢索在同一行的TR數據:Link to Example如何使用JQuery模態窗口
,我有以下的GridView在SP可視Web部件:
<asp:GridView ID="BookingResults" runat="server" EnableModelValidation="True" AutoGenerateColumns="False" AllowSorting="true" ForeColor="Black">
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<asp:Label runat="server" ID="commHdr" Text="Show Guideline" />
</HeaderTemplate>
<ItemTemplate>
<asp:LinkButton runat="server" ID="btnShow3" CssClass="btnSearch3" Text="VIEW" PostBackUrl="javascript:void(0);" OnClientClick="javascript:test();return false;"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="ID" HeaderText="ID" ItemStyle-VerticalAlign="Top" />
<asp:BoundField DataField="Topic" HeaderText="Topic" ItemStyle-VerticalAlign="Top" />
<asp:BoundField DataField="Location" HeaderText="Location" ItemStyle-VerticalAlign="Top" />
<asp:BoundField DataField="Specialty" HeaderText="Specialty" ItemStyle-VerticalAlign="Top" />
<asp:TemplateField HeaderText="Provider Name">
<ItemTemplate>
<div style="width: 155px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;">
<asp:Label ID="lblEllipsis" runat="server" Text='<%#Eval("Provider") %>' ToolTip='<%#Eval("Provider") %>'></asp:Label>
</div>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Summary" ItemStyle-VerticalAlign="Top">
<EditItemTemplate>
<asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("Summary") %>' CssClass="sumM"></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Bind("Summary") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="Guideline" HeaderText="Guideline" ItemStyle-CssClass="gLine" HeaderStyle-CssClass="gLine" />
</Columns>
</asp:GridView>
生成的代碼之後,它看起來像這樣的網頁:
每一行都有自己的數據和examp生成的HTML文件:
<tr>
<td>
<a onclick="javascript:test();return false;" id="ctl00_ctl33_g_36ed1b14_1f08_43fb_8099_eb3423a33ed9_BookingResults_ctl05_btnShow3" class="btnSearch3" href="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$ctl33$g_36ed1b14_1f08_43fb_8099_eb3423a33ed9$BookingResults$ctl05$btnShow3", "", true, "", "javascript:void(0);", false, true))">VIEW</a>
</td>
<td valign="top">
After Hours
</td>
<td valign="top">
Pediatrics;
</td>
<td>
<div style="width: 155px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;">
<span id="ctl00_ctl33_g_36ed1b14_1f08_43fb_8099_eb3423a33ed9_BookingResults_ctl05_lblEllipsis" title="All Providers;">
All Providers;
</span>
</div>
</td>
<td class="sumM" valign="top">
<span id="ctl00_ctl33_g_36ed1b14_1f08_43fb_8099_eb3423a33ed9_BookingResults_ctl05_Label1">
<html>
<p>
<span style="FONT-SIZE:11pt;">Callback Number
<span id="ms-rterangepaste-end"></span>
</span>
</p>
</html>
</span>
</td>
<td class="gLine" valign="top"> <!-- HIDDEN FROM USER BUT IN SOURCE CODE -->
<html>
<p>
THIS IS A TEST GUIDELINE BUT NOT SHOWN TO THE USER BUT WILL BE SHOWN IN THE MODEL WINDOW.
</p>
</html>
</td>
</tr>
CSS來從視圖中隱藏列,但仍從後臺代碼執行:
.gLine {
display: none;
}
使用以下顯示模式窗口:
<div id="dialog" style="display: none">
<b>Id:</b> <span id="infoShow"></span>
</div>
我試圖在Guideline
標題下顯示相應的鏈接數據,通過JQuery中的以下方法點擊鏈接:
function test() {
alert("test");
$("#infoShow").html($(".gLine", $(this).closest("tr")).html());
$("#dialog").dialog({
title: "View Guideline",
buttons: {
Ok: function() {
$(this).dialog('close');
}
},
modal: true
});
}
在上面的例子中,當我點擊查看鏈接,模態窗口應該顯示:
<HTML>
<p>
THIS IS A TEST GUIDELINE BUT NOT SHOWN TO THE USER BUT WILL BE SHOWN IN THE MODEL WINDOW.
</p>
</HTML>
,但它顯示的是什麼。
如何修改我的jQuery代碼,顯示TD中的文本與類gLine
我想下面的很好,但我不斷收到undefined
第二警報:
function test() {
alert("test");
$("#infoShow").html($(".gLine", $(this).closest("tr")).html());
var tableData = $(this).children("td").map(function() {
return $(this).text();
}).get();
alert(tableData[5]);
$("#dialog").dialog({
title: "View Guideline",
buttons: {
Ok: function() {
$(this).dialog('close');
}
},
modal: true
});
}
你不應該有''標籤內的主''該標籤包裝的一切任何地方。 – Mottie 2014-09-23 20:57:26
他們都輸入數據,所以我會解碼它,然後顯示在顯示窗口。 – SearchForKnowledge 2014-09-23 20:57:55
這不是有效的HTML,瀏覽器和/或jQuery可能無法正確解釋它。 – Mottie 2014-09-23 20:59:39