通过javascript提交表单
我有一个页面,如果用户想要编辑前一个屏幕上的某些文本,用户可以访问该页面。一旦他们完成编辑它被用于验证的JavaScript提交表单数据,这是形式:通过javascript提交表单
<script type="text/javascript">
function validate(F) {
var post = F;
var title = F;
post = post.trim();
title = title.trim();
if(post.length == 0) {
alert("This is blank");
return false;
}
else {
if(title.length == 0) {
var agree=confirm("Really?");
if (agree) {
return true;
}
else {
return false;
}
}
return true;
}
}
:
<form id='editpost' action='' method='post' >
Your Post:<br/>
<input type='hidden' name='' value='""'>
Title: <input type='text' name='' value='""'/><br/>
<textarea name='' cols='100' rows='100'>""</textarea>
<br/><input type=submit value='Submit' name='' onclick='return validate(document.forms[0]);'><input type=submit value='Cancel' name=''>
</form>
}
我检查值被在相应的框中使用的JavaScript进入
当表单最终提交时,一些数据会在mysql数据库中用来自表单的数据更新,并且用户被重定向到页面以查看它。我想要做的是通过JavaScript中的post方法提交表单,这是为了阻止用户关闭他们的javascript,并有可能将空白bodys输入到数据库中。我真的不知道如何做到这一点。
您在页面上的提交按钮应该是一个虚拟按钮,只能调用您的验证功能。然后提交只是说document.getElementById('editpost')。submit();从你的代码。 (如果我的记忆失败了我,你可能会试着提交大写S提交)
希望这会有所帮助。
编辑:
<form id='editpost' action='editPost.php' method='post' >
...
<br/><input type=button value='Submit' name='alterPost' onclick='validateForm(document.forms[0]);'><input type=submit value='Cancel' name='no'>
</form>
然后在你的JavaScript,而不是返回一个值
...
// if it's valid
F.submit();
...
// if it's not valid
// show the user a message explaining why
...
你能告诉我一个例子吗?我不确定我明白。 – W0lf7 2012-03-24 20:06:31
@ W0lf7示例添加 – user980058 2012-03-24 20:20:33
谢谢!这是我正在寻找:) – W0lf7 2012-03-24 20:40:04
我希望能够做的就是通过POST方法提交表单javascript,这是为了阻止用户关闭他们的javascript,并可能输入空白
你实际需要的是服务器端(非客户端/ Javascript)验证,以防止“无效数据”(但是你定义它)从发送/保存到你的数据库。
如果客户端(浏览器)上的Javascript被关闭没有您的Javascript将运行,表单将POST(或GET)到您定义的任何操作(editPost.php)。你需要添加验证码/处理到editPost.php
你永远不应该只依靠客户端验证。你也应该执行服务器端验证! – 2012-03-24 20:03:23
如果他们关闭JavaScript,你的代码将如何运行? – dldnh 2012-03-24 20:04:06
我要实现这两个,但这对我来说更难,因为我以前没有真正处理过javascript。 – W0lf7 2012-03-24 20:06:07