在我的asp页面中,我使用applet截取客户端桌面的屏幕截图,并要求他们只需单击LinkButton
即可将其发送到服务器。我使用runApplet()
函数调用我的applet来捕获屏幕并将字符串值分配给隐藏值。 (图片存储为base64字符串)直到这里,一切都很完美!但是,SendLinkButton_Click似乎没有执行!
这是我的链接按钮。
<asp:LinkButton ID="SendLinkButton"
OnClientClick="runApplet(); return false;"
OnClick="SendLinkButton_Click"
Visible="false"
CssClass="portal-arrow portal-button"
runat="server">Send</asp:LinkButton>
这是我的Javascript功能
function runApplet() {
var msg = document.capture.capture();
var hiddenControl = '<%= inpHide.ClientID %>';
document.getElementById(hiddenControl).value = msg;
}
这就是SendLinkButton_Click
中的内容protected void SendLinkButton_Click(object sender, EventArgs e)
{
Server.Transfer("Preview.aspx", true);
}
当我将javascript函数放入LinkButton的OnClientClick时,并使用另一个LinkButton执行此“SendLinkButton_Click”。它完美无缺!但我希望他们只需点击一下即可使用!
请帮忙!
答案 0 :(得分:3)
您的客户端点击返回false,因此在此之后不会对服务器进行回发。
尝试更改:
OnClientClick="runApplet(); return false;"
要
OnClientClick="runApplet();"
答案 1 :(得分:2)
从OnClientClick属性中删除return false
。如果从中返回false,则不会执行回发。