0
Protected Sub lnkContractors_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles lnkContractors.Click

    If Context.User.IsInRole("HOD") Then
        lnkContractors.OnClientClick = "PopupCenter('Juniors.aspx', 'myPop1',820,500);"
    ElseIf Context.User.IsInRole("Contractor") Then
        lnkContractors.OnClientClick = "PopupCenter('Contractors.aspx', 'myPop1',820,500);"
    End If

End Sub

我的母版页中有一个链接按钮,链接按钮位于更新面板中。问题是,当我第一次单击链接按钮时,页面只刷新但弹出窗口没有打开。我必须第二次单击才能打开弹出窗口。

function PopupCenter(pageURL, title, w, h) {
            var left = (screen.width / 2) - (w / 2);
            var top = (screen.height / 2) - (h / 2);
            var targetWin = window.open(pageURL, title, 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, copyhistory=no, width=' + w + ', height=' + h + ', top=' + top + ', left=' + left);
    } 
4

1 回答 1

1

您需要OnClientClick在页面加载时声明 JavaScript 函数。不在按钮OnClick事件中。由于需要在页面加载后立即决定向您的按钮添加客户端功能。

只需将您当前在按钮单击事件中的代码移动到 Page Load 事件,看看会发生什么。

于 2012-04-04T09:41:55.377 回答