将数据传递到由Javascript打开的ModalPopupExtender

时间:2012-07-11 12:58:29

标签: c# javascript asp.net ajaxcontroltoolkit modalpopupextender

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

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

工作正常。但是我还需要从选定的gridview行传入一个用户名,这样我就可以从数据库中获取一些数据并显示它们。

概述:

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

我怎样才能做到这一点?

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

由于

以下是调用javascript方法的代码

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

,它位于GridView的每个DataRow的for循环中。

1 个答案:

答案 0 :(得分: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 + "')");