这样是肯定不行的,如果你仅仅只需要将输入框置为不可输入状态,为什么一定要提交到服务端去完成?
直接通过JavaScript操作DOM不就可以解决吗?
function disabledTextBox() {
document.getElementById("textbox").disabled = "disabled";
}
<a οnclick="disabledTextBox();" style=" cursor:pointer">
<img src="images/default.gif" width="156" height="45" alt="" ></a>
服务器端代码是先执行的,使用ICallbackEventHandler 接口回调则非常简单。例子
<%@ Page Language="C#" AutoEventWireup="true" %>
<%@ Implements Interface="System.Web.UI.ICallbackEventHandler" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<script runat="server">
public string GetCallbackResult()
{
return ret;
}
public void RaiseCallbackEvent(String eventArgument)
{
ret = "得到的客户端参数是:" + eventArgument + "\r\n" + "服务器端计算得到的参数:" + DateTime.Now.ToString();
}
string ret = "";
protected void Page_Load(object sender, EventArgs e)
{
ClientScriptManager cm = Page.ClientScript;
String cbReference = cm.GetCallbackEventReference(this, "arg", "ReceiveServerData", "");
String callbackScript = "function CallServer(arg, context) {" + cbReference + "; }";
cm.RegisterClientScriptBlock(this.GetType(), "CallServer", callbackScript, true);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
</head>
<body>
<form id="form1" runat="server">
</form>
<script type="text/javascript">
CallServer("客户端的参数");
function ReceiveServerData(arg, context) {
alert(arg)
}
</script>
</body>
</html>