我想在没有表单提交的情况下发布输入值。
我有这个链接,其中声明了onClick()
函数。
<a href="javascript:void(0);" id = "graph" onClick="validation('graph','D');" >Link</a>
我在我的项目中受到限制,以避免使用FORM SUBMIT技术。我必须选择其他方式发布值并更新数据库。 做什么而不是Form Post ??
答案 0 :(得分:0)
您需要使用AJAX来执行此操作。即使您可以在自动停用字段时对文本字段使用onblur()
函数,也会调用JavaScript
函数,您可以在其中放置代码来更新数据库。
$.ajax({
type: 'POST',
url: 'http://xyz.com/updatedb.php',
data: {
'foo': 'bar'
}
});
此代码将从表单中发送数据。
在updatedb.php文件中使用以下代码:
<?php
$in = $_POST['foo'];
$con = //connection string;
$query = "insert into tablename values('$in')";
$result = mysqli_query($con, $query)
or die('Something is wrong in query chek it');
?>
答案 1 :(得分:0)
如果您严格地谈论表单,并且如果您可以使用javascript框架(例如jQuery),它会立即为您提供所需的所有AJAX功能:
您可以查看此问题: jQuery AJAX submit form
这为您提供了一种方法。您还可以改进代码,使其更易于访问,更少阻碍(这使得支持更容易,因为javascript将与您的HTML代码分开)。
<button id = "graph" >my action</a>
并且在你的脑海中,在一个脚本元素中:
$(document).ready(function() {
// the functions below are executes once the document is loaded
$("#graph").click(function(){
validation('graph','D');
});
});
如果您不严格谈论表单,可以通过定义uri和handler来完成: http://www.domain.com/?r=my-action/arg1/arg2/arg3 ...
您可以在模型视图控制器框架中找到公共技术(我不知道您正在使用哪种服务器语言)。
注意:除了jQuery之外还有其他框架,但我已经习惯了 http://en.wikipedia.org/wiki/Comparison_of_JavaScript_frameworks