Javascript 如何检查小枝中是否单击了按钮?
我希望在表中的细枝文件中有一个按钮,用于从数组中删除元素,最好是索引 在我所做的研究中,我一直认为任何数据操作都应该保留在控制器中。我确信我可以用jquery完成我的解决方案,但这不违反数据操作规则吗?还是应该在控制器中执行某些操作?我试着用POST查看按钮是否已设置,但没有效果 本质上,单击此按钮后,相应元素的索引将从数组中删除。我怎样才能以最好的方式实现这一点 另外,我只看过一些关于jquery的教程,所以我是一个完全的初学者。如果可以的话,我如何使用jquery实现这一点 我对jquery的尝试:Javascript 如何检查小枝中是否单击了按钮?,javascript,php,jquery,symfony,twig,Javascript,Php,Jquery,Symfony,Twig,我希望在表中的细枝文件中有一个按钮,用于从数组中删除元素,最好是索引 在我所做的研究中,我一直认为任何数据操作都应该保留在控制器中。我确信我可以用jquery完成我的解决方案,但这不违反数据操作规则吗?还是应该在控制器中执行某些操作?我试着用POST查看按钮是否已设置,但没有效果 本质上,单击此按钮后,相应元素的索引将从数组中删除。我怎样才能以最好的方式实现这一点 另外,我只看过一些关于jquery的教程,所以我是一个完全的初学者。如果可以的话,我如何使用jquery实现这一点 我对jquery
cartArray.splice($.inArray(removeItem, cartArray), [0]);
。。。其中0是索引…我知道这不起作用,因为我需要索引来知道选择了哪个元素
在细枝文件中:
<tbody>
{% for key, cartValue in cartArray %}
<tr>
<td>{{ cartValue[0] }}</td> <!--Product-->
<td>{{ cartValue[1] }}</td> <!--Quantity-->
<td>${{ cartValue[2] }}</td> <!--Price Per Unit-->
<td>
<button type="button" class="btn btn-danger">
<span class="glyphicon glyphicon-remove" aria-hidden="true"></span>
</button>
</td>
</tr>
{% endfor %}
</tbody>
非常感谢您的帮助,再次感谢 希望这有助于:
//简单变量,一个用于从数组构建句子
//其中一个就是我们的元素数组
var语句=“”,
araEle=$('li');
//首先,我构建了一个句子,以便在删除之前显示出来
araEle.each(函数(i){语句+=(i>0?“”:“”)+$(this.text();});
//这里我使用一个简单的jQuery/css选择器来获取第一个字段集的p标记
$('fieldset:first p')。文本(句子);
//这里将假装我们的按钮被点击,我们的索引是4
var指数=4;
//这是简单的老式香草JS,
//没有比jQuery更好的选择了,
//这就是为什么他们没有做一个。
//第一个参数是从零开始的索引值
//第二个参数是从那里数到多少
//如果只想删除索引中的一项,则第二个值为1
var returnsValue=辅助拼接(索引1);
//正如分配的变量所说
//如果你从它那里得到回报,它就是,
//在本例中,是一个元素,
//在这个指数上
//因此,如果您想在之后删除元素本身,您可以说:
$(returnsValue).remove();
//重新设置我们的句子串
句子='';
//重判
araEle.each(函数(i){语句+=(i>0?“”:“”)+$(this.text();});
//再次使用简单的jQuery/css选择器获取最后一个字段集的p标记
//并显示新句子
$('fieldset:last p')。文本(句子)代码>
- 此
- 是
刚刚
- a
- [测试]
列表
数组删除前的语句
索引4处阵列拼接后的句子(测试)
方法是什么?是显示视图的方法吗?还是处理表单或其他数据的POST方法?如果是通过单击链接从视图中调用的方法,请传递一些路由| get | post parameters/***创建“将产品添加到购物车”选项@路径(“/{id}/cart”,name=“product_cart”)*@Method(“GET”)*@Template()*/我认为这是描述它的最好方式。fruits.shift();//从数组中删除第一个元素并仅返回该元素。
-fruits.pop();//从数组中删除最后一个元素,并仅返回该元素。
@SpYk3HH这不是我想要实现的
$cartArray = array();
if (is_null($cartArray) || !$entity) {
throw $this->createNotFoundException('Error: Nothin in Array/Entity');
} else {
$cartArray = $session->get('cartArray', []);
$cartArray[$entity->getId()] = [$entity->getName(), $entity->getQuantity(), $entity->getPrice()];
foreach ($cartArray as $key => $product) {
// dump($cartArray); die;
// dump($key); die;
$productEntity = $em->getRepository('PaTShopTestBundle:Product')->find($key);
$quantity = $productEntity->getQuantity();
$price = $productEntity->getPrice();
$totalCostOfAllProducts += $price * $quantity;
}
}
//$remove = unset($cartArray);
// if (isset($_POST['Button'])) {
// unset($cartArray[1]); //remove index
// }
$session->set('cartArray', $cartArray); //session---------------
//var_dump($cartArray); die;
return array(
'price' => $price,
'quantity' => $quantity,
'totalCostOfAllProducts' => $totalCostOfAllProducts,
'cartArray' => $cartArray,
'entity' => $entity,
'delete_form' => $deleteForm->createView(),
);