Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/89.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 仅将单击的按钮更改为新按钮_Php_Jquery - Fatal编程技术网

Php 仅将单击的按钮更改为新按钮

Php 仅将单击的按钮更改为新按钮,php,jquery,Php,Jquery,我在一个表行中有一个按钮,该按钮随布尔值而变化 <tr id="<?php echo $zeile['id'] ?>" value="<?php echo $zeile['id'] ?>" class="task"> <td > <form method="POST" action="main.php" value="<?php echo $zeile['id']; ?>"> <?php if ($done == tr

我在一个表行中有一个按钮,该按钮随布尔值而变化

<tr id="<?php echo $zeile['id'] ?>" value="<?php echo $zeile['id'] ?>" class="task">
<td >
<form method="POST" action="main.php" value="<?php echo $zeile['id']; ?>">
<?php if ($done == true): ?>
    button type="submit" name="checkbtn" id='<?php echo $zeile['id']; ?>' >                                          
       Check
    </button>
    <input type="hidden" name="id" value="<?php echo $zeile['id']; ?>">
<?php else: ?>  
   <button type="submit" name="uncheckbtn" id='<?php echo $zeile['id']; ?>'>                                          
      UnCheck
   </button> 
   <input type="hidden" name="id" value="<?php echo $zeile['id']; ?>">  
<?php endif ?>     


</form>

</td>
使用jquery,我希望我可以单击行上的任意位置来执行按钮单击:

$(".table tr").on('click', function() {
        $(this).toggleClass('highlighttask');
        $(this).find('button[name="checkbtn"]').click();
    });
问题是,如果我单击一行,每个按钮都会变为未选中


我认为我需要使用id,但我不知道如何使用。

您已经在tr上有了click事件处理程序,因此无需使用
最近的
,只需使用
查找
按钮即可

$(".table tr").on('click', function() {
        $(this).toggleClass('highlighttask');
        $(this).find('button[name="checkbtn"]').click();
    });

您已经在tr上单击了事件处理程序,因此无需使用
最近的
,只需使用
查找
按钮即可

$(".table tr").on('click', function() {
        $(this).toggleClass('highlighttask');
        $(this).find('button[name="checkbtn"]').click();
    });

那是真的,谢谢。但它仍然会更改每个按钮。这应该只单击已单击行中的按钮。您的按钮类型为submit,因此它应该提交整个表单。在这种情况下,您可以共享按钮单击事件处理程序代码或共享具体发生的情况吗?它单击右侧按钮,这是正确的,但通过布尔值,每行中的每个按钮都将更改为未选中,而不仅仅是单击的按钮。耶,这就是我希望看到按钮的click事件处理程序的原因,您正在更改布尔值,以便我可以告诉您问题及其解决方案
if(isset($\u POST['checkbtn')){…
是我的按钮单击事件。不是吗?这是真的,谢谢。但它仍然会更改每个按钮。这应该只单击单击单击行中的按钮。您的按钮类型是submit,所以它应该提交整个表单。如果是这样,您可以共享按钮单击事件处理程序代码或共享具体发生的情况吗?它单击了右边的按钮,t是的,但通过布尔值,每行中的每个按钮都将更改为未选中,而不仅仅是单击的按钮。耶,这就是为什么我希望看到更改布尔值的按钮的单击事件处理程序,以便我可以告诉您问题及其解决方案
if(isset($_POST['checkbtn')){…
是我的按钮点击事件。不是吗?