为什么我的jQuery函数没有被正确调用
Why is my jQuery function not being called correctly?
我有一个jQuery函数,它使用另一个名为html5csv.js的jQuery库(它解释了你将看到的一些CSV内容)
给你:
function validateNewQuiz()
{
CSV.begin("#upload_csv").go(function(e,D)
{
if (e)
{
return console.log(e);
alert("Sorry, an error occured");
}
var s = "";
for (var i = 0; i <= D.rows.length - 1; i++)
{
s +=D.rows[i].join(',');
s += "'n";
}
var fullString = s;
if(/^(([^,]+,){4}[^,]+'n){3}$/.test(fullString))
{
return true;
}
else
{
return false;
}
});
}
以下是我如何尝试从表单中的onsubmit
调用我的函数:
<form method="post" action="createplay.php" onsubmit="return validateNewQuiz();" enctype="multipart/form-data">
我的函数和正则表达式都经过了彻底的测试,以确保它正常工作。当我决定将它实现到我的大型文档中,并将其封装在function validateNewQuiz(){ //my function here }
中时,它就停止了工作。
我也没有在表格中使用onsubmit
部分进行测试。
有人对为什么我的表单总是提交有什么建议吗?即使我的函数应该返回false
?
如果验证函数传递了true
值,则onsubmit
事件处理程序允许继续提交,如果收到false
值,则不允许继续提交。在您的情况下,内部函数返回一个true或false值,但该值不会传递给外部validateNewQuiz
函数,因此验证的true/false结果不会传递给onsubmit
事件处理程序。要解决此问题,只需返回CSV
函数的值。
function validateNewQuiz()
{
var csvValidation = CSV.begin("#upload_csv").go(function(e,D)
{
if (e)
{
return console.log(e);
alert("Sorry, an error occured");
}
var s = "";
for (var i = 0; i <= D.rows.length - 1; i++)
{
s +=D.rows[i].join(',');
s += "'n";
}
var fullString = s;
if(/^(([^,]+,){4}[^,]+'n){3}$/.test(fullString))
{
return true;
}
else
{
return false;
}
});
return csvValidation;
}
您可以制作一个按钮来调用您的函数:
<button onclick="validateNewQuiz()">Submit</button>
并在验证后提交表格:
function validateNewQuiz()
{
CSV.begin("#upload_csv").go(function(e,D)
{
//...
if(/^(([^,]+,){4}[^,]+'n){3}$/.test(fullString))
{
$("form").submit();
}
});
return false;
}
相关文章:
- Flash Uploadify在调用我的MVC控制器时没有保留会话/授权
- 当在文档中拖动mouseup/mouseleve时,我想调用我的Ajax请求
- 为什么没有调用我的流错误处理程序
- JQuery$.ajax()发布数据以调用我的控制器中的方法
- 如何通过Javascript调用我的PHP文件
- 为什么不是't调用我的函数
- 角度js 我无法动态调用我的按钮
- 我可以在这个例子中立即调用我的函数,而不是通过匿名函数包装它吗?
- 如何获取调用我的函数的元素的 ID、类或 HTML 标记
- 做一个按钮的onclick事件可以调用我的python代码
- 无法在我的 Android 应用程序中从 Javascript 调用我的 Java 类
- 如何从这个特定的上下文中调用我的JavaScript函数
- 单击表单提交按钮不会调用我的 JS 函数
- element.innerHTML 无法调用我的 javascript 函数
- 如何防止恶意代码调用我的 JavaScript
- 点击从JQUERY调用我的函数
- 我可以't在使用AJAX之后调用我的onclickjavascript函数
- 为什么didTransition不调用我的jquery
- 调用我的obj函数不是正确的方法吗
- 如何调用我的jQuery函数,使其在我的document.ready函数中运行