Jquery适用于一个按钮,但不适用于其他相同按钮?

时间:2015-07-19 04:53:09

标签: javascript php jquery button jbutton

我正在制作一个php论坛并使用相同的按钮,如果单击一个按钮,它就会起作用。无论如何,对于这个问题,我有一个改变形式的我的PHP脚本同样的问题。如果单击按钮,此脚本应该警告消息。两个按钮具有相同的名称,但警报仅适用于第一个按钮而不适用于第二个按钮。为什么?我该如何解决?

buttons.php

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
<script type="text/javascript">
$("document").ready(function() {
$('#oneButton').bind('click', alertButtonClick);
});

function alertButtonClick() 
{
    alert("There was a button clicked");                                                                      
}

</script>
</head>
<body>

<?php

    echo "<div class='comments'>";
    echo "<form id='theForm'>";
    echo "<button type='button' id='oneButton'>Post Comment</button></form></div>";

    echo "<div class='comments'>";
    echo "<form id='theForm'>";
    echo "<button type='button' id='oneButton'>Post Comment</button></form></div>";
?>

</body>
</html>

编辑: 当我修复按钮问题时,我很快就遇到了另一个问题。我一直试图解决它很长一段时间。无论如何,我在下面发布了两个代码。每个div都有值,文本区域和按钮。当我在第一个div中写入文本并点击“发表评论”时。按钮,它显示文本和值= 1,这是我想要的两个按钮。但是,如果我对第二个按钮执行相同操作,它仍会输出第一个按钮的内容,而不是第二个按钮,为什么?这是代码,试一试并帮助我。

button2.php

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript"         src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
<script type="text/javascript">

$("document").ready(function() 
{
    $('.oneButton').bind('click',sendInfoToServer);
});

function sendInfoToServer() 
{
    $('span.commentSent').load('button3.php',
    $('#theForm').serializeArray());
}

</script>
</head>
<body>

    <span class='commentSent'></span>

<?php

    echo "<div class='comments'>";
    echo "<form id='theForm'>";
    echo "<input type=hidden name='mess_block' value=1>";
    echo "<textarea name='comment' class='comment' cols=60 rows=2>Enter Comment…</textarea><br />"; 
    echo "<button type='button' class='oneButton'>Post Comment</button></form></div>"; //check the change

    echo "<div class='comments'>";
    echo "<form id='theForm'>";
    echo "<input type=hidden name='mess_block' value=2>";
    echo "<textarea name='comment' class='comment' cols=60 rows=2>Enter Comment…</textarea><br />"; 
    echo "<button type='button' class='oneButton'>Post Comment</button></form></div>"; // check the change
?>

</body>
</html>

button3.php

<?php

    $mb = $_POST["mess_block"];
    echo $mb . "<br/>";

    $mt = $_POST["comment"];
    echo $mt . "<br/>";

?>

2 个答案:

答案 0 :(得分:2)

您无法在HTML元素上共享ID。尝试更改一个按钮上的ID或改为使用类:

#include <stdio.h>

int add(int a, int b, int c, int d, int e, int f, char g, char h, char i)
{
    return a + b + c + d + e + f + g + h + i;
}

int main()
{
    return add(1, 2, 3, 4, 5, 6, 7, 8, 9);
}

答案 1 :(得分:1)

尝试将$item_to_delete = (int) $_POST["item_id"]; if ($item_to_delete > 0 ) { //run your mysqli query } 替换为$('#oneButton').bind('click', alertButtonClick);