使用Javascript从onClick更新数据库

时间:2013-12-29 16:44:46

标签: javascript php jquery mysql function

我正在尝试从锚点内的onClick过程更新数据库。

<a name=“fs1” onClick="updateArea1();"></a>

我正在努力使用 updateArea1 的功能,因为我不确定如何从锚点传递名称“fs1”并从a更新数据库脚本过程。

我基本上希望像这样更新数据库: UPDATE行WHERE id = 1 WITH(name_from_anchor)

然而......变量不一定来自名称标签。如果它更容易,可以在函数的括号中引用它。

<a onClick="updateArea1(fs1);"></a>

非常感谢任何帮助。

- 更新 -

LAUNCH.PHP

<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<meta name="apple-mobile-web-app-capable" content="yes" />

    <script src="includes/scripts/jquery-2.0.3.min.js"></script>

    <script>
        function updateArea1(el) {
         $.post("includes/db_update.php", $("#console").serialize());
        }
    </script>

</head>

<body>

    <a name="fs1" onClick="updateArea1(this.name);"></a>
    <a name="fs2" onClick="updateArea1(this.name);"></a>

</body>
</html>

DB_UPDATE.PHP

<?php

include 'db_connect.php';   

$area1= mysqli_escape_String($con,$_POST[]);

$query = "UPDATE previewState SET selected='".$area1."' WHERE id='1';";

mysqli_query($con,$query);

mysqli_close($con);

?>

4 个答案:

答案 0 :(得分:3)

如果您传递this,则可以执行以下操作:

<a name="fs1" onClick="updateArea1(this);"></a>

updateArea1(el){
  alert( el.name)
}

答案 1 :(得分:2)

由于您已使用Jquery标记了此问题,为什么不使用该元素的单击处理程序,如

$('a').click(function(e){
  e.preventDefault();
  updateAreat1($(this).attr('name'));
})

答案 2 :(得分:2)

这很简单。 Here's the demo

 <a name="temp"       onClick="updateArea1(this.name);">label</a>


 function updateArea1(el){
   alert( el)
 }

答案 3 :(得分:1)

为onclick事件分配函数时,可以使用此函数访问触发事件的元素(如果函数是全局函数或在窗口范围内)。

所以只需在updateArea1函数中使用this.name

function updateAreaa1(){
  updateDb(this.name);  //this will refer to the element that triggered the click event.
}

希望这有帮助。