Javascript 在validate函数中调用函数
我试图调用表单验证函数中的函数,但它不起作用。如果valid为true,则应调用confirm_submit函数Javascript 在validate函数中调用函数,javascript,Javascript,我试图调用表单验证函数中的函数,但它不起作用。如果valid为true,则应调用confirm_submit函数 $(document).ready(function() { $("#dialog").dialog({ autoOpen: false, buttons : { "Confirm" : function() { $('#form').submit(); }, "Cancel" : function() { $(this).
$(document).ready(function() {
$("#dialog").dialog({
autoOpen: false,
buttons : {
"Confirm" : function() {
$('#form').submit();
},
"Cancel" : function() {
$(this).dialog("close");
}
}
});
function confirm_submit(){
$("#dialog").dialog('open');
}
});
function validate(){
valid = true;
if ( document.form.number.value == ""){
alert ( "You need to complete the Number field." );
valid = false;
return valid;
}
if(valid){
confirm_submit();
}
}
这是因为
确认提交
的定义范围在文档.ready
事件中。将定义移动到}之后代码>右上方函数validate(){
这基本上就是你正在做的:
function x() {
function y() {
console.log('y')
}
console.log('x');
y();
}
function z() {
console.log('z');
y(); // throws: ReferenceError: y is not defined
}
你能描述一下它是如何工作的吗?这比仅仅说“它不工作”要有用得多。没有调用函数confirm_submit。如果我有$(“#dialog”)。dialog('open');在confirm_submit函数之外,对话框打开OK。我还尝试返回confirm_submit();省略if-valid条件..请注意,如果我用一个正常的确认警报替换if(valid){…}等,例如返回确认('confirm submit');这很好,很好,现在对话框打开了,但是表单刚刚提交…我想这是目前的另一个问题。