我想在没有表单提交的情况下发布输入值。我有这个链接,其中onClick()
声明了一个函数。
<a href="javascript:void(0);" id = "graph" onClick="validation('graph','D');" >Link</a>
我在我的项目中受到限制,以避免我们使用 FORM SUBMIT 技术。我必须选择其他方式来发布值并更新数据库。做什么而不是表单发布?
您需要使用 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');
?>
如果您严格地谈论表单,并且如果您可以使用 javascript 框架,例如 jQuery,它将立即为您提供您正在寻找的所有 AJAX 功能:
你可以检查这个问题: jQuery AJAX 提交表单
这为您提供了一种方法。您还可以改进您的代码,使其更易于访问和更少阻碍(这使得它更容易支持,因为 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 和处理程序来实现: http: //www.domain.com/ ?r=my-action/arg1/arg2/arg3 ...
您会在模型视图控制器框架中找到一些通用技术(我不知道您正在使用哪种服务器语言)。
注意:除了 jQuery,还有其他框架,但我习惯了 http://en.wikipedia.org/wiki/Comparison_of_JavaScript_frameworks