1

在我的代码隐藏中,我使用 javascript 打开了一个 ModalPopup

javascript: $find('BehaviorID').show()

效果很好。但我还需要从选定的 gridview 行中传递一个用户名,以便我可以从数据库中获取一些数据并显示它们。

概述:

  • 我有一个显示数据行的gridview。
  • 我可以单击一行以打开有关用户(数据)的详细信息。
  • 我需要将所选行的用户名传递给 ModalPopupExtender

我怎样才能做到这一点?

顺便说一句,我对 javascript 一点也不熟悉,但是当我看到代码时我就明白了,所以如果你有 javascript 解决方案,请不要犹豫分享。

谢谢

这是调用javascript方法的代码

e.Row.Attributes.Add("ondblclick", "javascript: $find('BehaviorID').show()");

它在 GridView 的每个 DataRow 的 for 循环中。

4

1 回答 1

0

添加一个 Html 隐藏字段来保存选定的用户名:

<input type="hidden" name="selectedUserName" id="selectedUserName" />

在每一行中,将用户名保存在控件中。在行单击事件中,您需要找到此控件并将上述隐藏输入分配给行用户名。

function showModalPopup(usernameInputID) {
   document.getElementById('selectedUserName').value = document.getElementById(usernameInputID).value;
   $find('BehaviorID').show();
}
e.Row.Attributes.Add("ondblclick", "javascript: showModalPopup('" + e.Row.FindControl("inpUserName").ClientID + "')");
于 2012-07-11T13:16:06.903 回答