Javascript确认没有停止发回的请求,如果按下取消?
问题描述:
我正在使用Javascript功能与confirm()
消息框,也有RequiredFieldValidator
如果我按下取消我的确认消息框但ValidatorGroup是真的,那么它不会停止获取回发请求。Javascript确认没有停止发回的请求,如果按下取消?
我想以这样的方式,如果validatorGroup是诚实信用,但函数返回false,则请求不应该得到后实施回
这里是我的代码: -
<asp:Button ID="btnStaffSendRequest" runat="server" Text="Send" OnClientClick="UploadRefrrel()"
UseSubmitBehavior="false" ValidationGroup="SaveRequestGroup" OnClick="btnStaffSendRequest_OnClick"
TabIndex="1000" />
这里是我的javascript函数: -
<script language="javascript" type="text/javascript">
function UploadRefrrel() {
var hiddenFile = this.document.getElementById("<%= hfInputForm.ClientID %>");
var upload = $find("<%= radUploadFiles.ClientID %>");
var inputs = upload.getUploadedFiles();
var retVal;
if (hiddenFile != null && hiddenFile.value != "" && inputs.length == 0) {
retVal = confirm("FYI - Only 'Referral Form' is attached. Do you want to proceed without any other attachment?");
}
return retVal;
}
</script>
答
<asp:CustomValidator ID="validatePostBack" runat="server" Display="None" ClientValidationFunction="Validate_PostBack"
ValidationGroup="SaveRequestGroup" ErrorMessage="<br /> Please add other attachment."></asp:CustomValidator>
<telerik:RadScriptBlock ID="uploadReferel" runat="server">
<script language="javascript" type="text/javascript">
function Validate_PostBack(sender, e) {
var hiddenFile = this.document.getElementById("<%= hfInputForm.ClientID %>");
var upload = $find("<%= radUploadFiles.ClientID %>");
var inputs = upload.getUploadedFiles();
if (hiddenFile != null && hiddenFile.value != "" && inputs.length == 0) {
var retVal = confirm("FYI - Only 'Referral Form' is attached. Do you want to proceed without any other attachment?");
if (retVal == true) {
e.IsValid = true;
}
else {
e.IsValid = false;
}
}
}
</script>
</telerik:RadScriptBlock>
发现我的解决方案,做工精细
最初设置'var retVal = false;' – Webruster
没有它的不工作我在我的'ValidateGroup'中有近20个控件是'SaveRequestGroup',如果我填充了所有它们,那么ValidateGroup是true,但是在Button Click我检查条件和如果选择取消仍然请求发回有没有什么办法,如果我的ValidateGroup是真实的,但JavaScript函数返回false然后停止请求回发 –
这soultion可能不是确定的解决方案,但它的工作原理,因为我们想出了这样的情况:Sol:创建一个隐藏变量,并尝试在OnCLientClick中调用javascript函数,如果您的JS vaslidation为“true”,则将该隐藏变量设置为“true”,并检查代码中的状态以及验证组状态。 – Webruster