我已经提出了一种在页面上添加图像以供用户反馈的方法。我已经尝试过该方法,现在想一遍又一遍地使用它,以便它与站点上的验证匹配。
function ValidateFields(div, imgDiv) {
var validPass = true;
var elem = document.getElementById(div).value;
if (elem == "") {
var img = document.createElement("img");
img.src = "/assets/img/errorIcon.png";
var src = document.getElementById(imgDiv);
src.appendChild(img);
validPass = false;
//document.getElementById('lbl_pdf_title').innerText = ("Please enter a title for the PDF");
}
return (validPass);
}
当我通过传递正确的值来使用此方法时,它可以正常工作,但现在我想使用如下方法:
function ValidatePdf() {
ValidateFields('txt_pdf_title', 'imgPdfError');
if (!ValidateFields()) {
// make it false
}
}
我想在
ValidatePdf()
中多次使用该方法,但是它会显示符号,然后继续运行服务器端方法。这是我的按钮单击:
<button id="btn_submit_pdf"
runat="server"
class="btn btn-default"
title="Submit PDF"
onclick="if (!ValidatePdf()) return false;"
onserverclick="btn_submit_pdf_Click">
Submit
</button>
我是否需要将另一个值传递给
ValidateFields()
我不知道为什么它不起作用。但是当您传递原始值并在按钮上单击按钮时调用方法
最佳答案
只需返回ValidateFields
的结果:
function ValidatePdf() {
return ValidateFields('txt_pdf_title', 'imgPdfError');
}
您也可以将
onclick
更改为:onclick="return ValidatePdf();"
以便它返回
ValidatePdf
的结果,现在是ValidateFields
的结果。关于javascript - 如何停止调用服务器端事件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26931694/