我在验证结束时设置了一个名为valsave()
的按钮的验证,我禁用了按钮。
验证和禁用功能都能正常工作,但同一按钮的服务器端onclick功能无法触发。
<asp:Button ID="btnSave" runat="server" Text="Save" TabIndex="16" SkinID="imgsave"
ToolTip="Save" OnClientClick="return valSave();" OnClick="btnSave_Click" />
function valSave()
{
if(document.getElementById('hifMsgClick').value=='')
{
vtxtPRequestDate=document.getElementById('txtPRequestDate');
vdgvPurReq=document.getElementById('dgvPurReq');
if(vtxtPRequestDate.value.length==0)
{
showMsgbox('BLANK','Purchase Request Date','2','txtPRequestDate');
return false;
}
if(vdgvPurReq == null)
{
showMsgbox('BLANK','Purchase Request Details','2','ddlItemRequestID');
return false;
}
}
else
{
var vvalue=document.getElementById('hifMsgClick').value;
document.getElementById(vvalue).focus();
document.getElementById('hifMsgClick').value="";
return false;
}
var vbtnSave=document.getElementById('btnSave');
vbtnSave.disabled = true;
vbtnSave.value = 'Pls..wait';
__doPostBack('btnSave','OnClick'); }
如何让服务器端点击火?
答案 0 :(得分:2)
为什么不只是return true;
?
答案 1 :(得分:0)
如果禁用该按钮,则无法触发onclick。所以我建议你在隐藏的.like中添加一个按钮:
<asp:Button ID="btnSave" runat="server" Text="Save" TabIndex="16" SkinID="imgsave" ToolTip="Save" OnClientClick="return valSave();" OnClick="btnSave_Click" />
<asp:Button ID="btnwait" runat="server" Text="Pls..wait" style="display:none" disabled="true" TabIndex="16" SkinID="imgsave" ToolTip="Save" />
然后在你的函数中更改你的代码
document.getElementById('btnSave').style.display = 'none';
document.getElementById('btnwait').style.display = 'block';
document.getElementById('btnSave').Click();
谢谢你
Gourav
答案 2 :(得分:0)
试试这个样本开始。使用.client id获取您的控件ID。并在声明变量时使用var。
function valSave() {
var mytext = document.getElementById("<%=hifMsgClick.ClientID%>").value;
if (mytext == "")
{
alert("No records found");
}
else
{
//CLICK SAVE
document.getElementById("<%=btnSave.ClientID%>").click();
}
};
此致
答案 3 :(得分:0)
你的函数总是返回false,因为你的if条件总是返回false
function valSave()
{
if(document.getElementById('hifMsgClick').value=='')
{
return false;
}
else
{
return false;
}
// this part can not execute
var vbtnSave=document.getElementById('btnSave');
vbtnSave.disabled = true;
vbtnSave.value = 'Pls..wait';
__doPostBack('btnSave','OnClick'); }
}