1

我想在没有表单提交的情况下发布输入值。我有这个链接,其中onClick()声明了一个函数。

 <a href="javascript:void(0);" id = "graph" onClick="validation('graph','D');" >Link</a>

我在我的项目中受到限制,以避免我们使用 FORM SUBMIT 技术。我必须选择其他方式来发布值并更新数据库。做什么而不是表单发布?

4

2 回答 2

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');
 ?>
于 2013-03-04T17:38:20.943 回答
0

如果您严格地谈论表单,并且如果您可以使用 javascript 框架,例如 jQuery,它将立即为您提供您正在寻找的所有 AJAX 功能:

http://api.jquery.com

你可以检查这个问题: 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

于 2013-03-04T17:53:34.257 回答