php - php中模态引导的单击功能不起作用
问题描述
我正在开发一个使用引导模式的 php web 应用程序。当我单击一个按钮时,会显示模态但其提交功能不起作用。我不知道我做错了什么,但下面是我的代码。
**viewproduct.php 代码:**
<!-------------------------ADD STOCK MODAL------------------------------------->
<div id="add_stock_modal" class="modal fade" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title"><b>STOCK-IN</b></h4>
</div>
<div class="modal-body">
<label><b>Add Stock</b></label>
<input type="text" placeholder="Enter Stock" name="txt_addstock" id="txt_addstock" class="form-control">
<br />
<label><b>Stock Price</b></label>
<input type="text" placeholder="Enter Stock Price" name="txt_addprice" id="txt_addprice" class="form-control">
<br />
<button class="btn btn-warning" type="button" name="btn_stockin" id="btn_stockin">Stock-in</button>
</div>
</div>
</div>
</div>
<!-------------------------------------------------------------------------------->
要调用模态,我在 **viewproduct.php 代码中使用它:**
div>
<button type="button" name="open_stock_modal" id="open_stock_modal" class="btn btn-success" data-toggle="modal" data-target="#add_stock_modal">Add stock</button>
</div>
这是我的ajax函数
<script>
$(document).ready(function() {
$('.btn_stockin').click(function() {
event.preventDefault();
var newStock = $('#txt_addstock').val();
var newPrice = $('#txt_addprice').val();
if(newStock != '' && newPrice != ''){
swal ( "Oops" , "fields are required!" , "error" );
}else{
$.ajax({
method: 'POST',
url: 'stock-in.php',
data:{
stock_up: newStock,
cost: newPrice
<?php
echo ', id: '.$row->pid.' '
?>
<?php
echo ', oldstock: '.$row->pstock.' '
?>
},
success:function(data){
swal ( "Oops" , "fields are required!" , "success" );
}
});
}
});
});
</script>
输入值后点击入库按钮,不显示错误,也没有任何反应。我不知道我做错了什么。
这是stock-in.php上的代码
<?php
include_once'connectdb.php';
if($_SESSION['useremail']=="" OR $_SESSION['role']=="Admin"){
header('location:index.php');
}
if(isset($_POST['stock_up'])){
$stockup=(int)$_POST['stock_up'];
$newPrice=(int)$_POST['cost'];
$id=$_POST['id'];
$oldstock=(int)$_POST['oldstock'];
$new_stock = $oldstock + $stockup;
$sql="UPDATE `tbl_product` SET `pstock` = ?, `purchaseprice` = ? WHERE pid= ? ";
$update=$pdo->prepare($sql);
$update->execute([$new_stock, $newPrice, $id]);
if($result){
echo'Stock updated!';
}else{
echo'Error in updating stock';
}
}
?>
我会感谢你的帮助。谢谢。
解决方案
我将代码从
$(document).ready(function() {
$('.btn_stockin').click(function() {
至
$(document).ready(function() {
$('#btn_stockin').click(function() {
它工作得很好。
推荐阅读
- import - 熊猫导入:ModuleNotFoundError:没有名为“pandas.api.extensions”的模块
- r - 在 R / RStudio 中的每行末尾添加 #-Symbol 的快捷方式
- ansible - 通过嵌套循环迭代
- javascript - 从 JQuery 到 Javascript 的转换
- janusgraph - 为什么 Janusgraph 配置工厂不起作用?
- mips - 如何在 MIPS 中以十六进制输出浮点数?
- reactjs - 创建不再注入 CSS (SCSS) 的 React App
- java - 为什么可以指向使用自定义密码而不提供密码的信任库?
- c++ - Thread-safe read-only alternative to vtkUnstructuredGrid->GetPoint()
- ansible - 无法在ansible中切换用户