javascript - 如何通过单击一次按钮在数据库中插入文本框值和 dxDatagrid 所有选定值?
问题描述
我有输入标签(文本框)和 dxDatagrid。我能够将所有选定的值从 dxDatagrid 传递到数据库,但我也想通过一键单击传递文本框(在网格之外)值。
$("#myButton").dxButton({
text: "Test",
onClick: function () {
var stones = (JSON.stringify(dataGrid.getSelectedRowsData()));
console.log(stones);
updatedetgridReturnShip(stones);
}
});
function updatedetgridReturnShip(stonedetailsarr){
$('#sloader').show();
$.ajax({
url: 'php/insertGridReturnShipment.php',
dataType: 'json',
type: "POST",
data: {
returnstonedetails: stonedetailsarr,
txtRefnoval : txtRefnoval
},
success: function (result) {
alert(result);
$('#sloader').hide();
$("#myImportModal").modal("hide");
}
});
}
PHP服务器端代码:
$StoneArr = json_decode($returnstonedetails, true);
$updstmt = '';
foreach ($StoneArr as $Stone){
$textboxval = $_POST['textboxval'];
$refVal = json_decode($textboxval, true);
$updstmt .= 'CALL return_ship_stones('.'"'.$Stone["carat"].'"'.',
'.'"'.$Stone["clarity"].'"'.','.'"'.$Stone["color"].'"'.','.'"'.$Stone["invcno"].'"'.','.'"'.$Stone["invoicedate"].'"'.', '.'"'.$Stone["lab"].'"'.',
'.'"'.$Stone["measurement"].'"'.' , '.'"'.$Stone["ppt"].'"'.' , '.'"'.$Stone["qstonesid"].'"'.' , '.'"'.$Stone["qty"].'"'.' ,
'.'"'.$Stone["reportno"].'"'.' , '.'"'.$Stone["shape"].'"'.' , '.'"'.$Stone["totalvalue"].'"'.', '.'"'.$refVal["referenceid"].'"'.');';
}
单击一次如何在数据库中同时传递文本框和 dxDatagrid 值
解决方案
您可以使用jquery方法从 id 输入的文本中获取值并将其传递给ajax数据参数:
$('#refno').val().trim()
下面的代码:
function updatedetgridReturnShip(stonedetailsarr){
$('#sloader').show();
$.ajax({
url: 'php/insertGridReturnShipment.php',
dataType: 'json',
type: "POST",
data: {
returnstonedetails: stonedetailsarr,
txtRefnoval : txtRefnoval,
textboxval: $('#refno').val().trim()
},
success: function (result) {
alert(result);
$('#sloader').hide();
$("#myImportModal").modal("hide");
}
});
}
PHP代码:
<?
$returnstonedetails = $_REQUEST['returnstonedetails'];
$StoneArr = json_decode($returnstonedetails, true);
$updstmt = '';
foreach ($StoneArr as $Stone){
$textboxval = $_REQUEST['textboxval'];
$refVal = $textboxval;
$updstmt .= 'CALL return_ship_stones('.'"'.$Stone["carat"].'"'.',
'.'"'.$Stone["clarity"].'"'.','.'"'.$Stone["color"].'"'.','.'"'.$Stone["invcno"].'"'.','.'"'.$Stone["invoicedate"].'"'.', '.'"'.$Stone["lab"].'"'.',
'.'"'.$Stone["measurement"].'"'.' , '.'"'.$Stone["ppt"].'"'.' , '.'"'.$Stone["qstonesid"].'"'.' , '.'"'.$Stone["qty"].'"'.' ,
'.'"'.$Stone["reportno"].'"'.' , '.'"'.$Stone["shape"].'"'.' , '.'"'.$Stone["totalvalue"].'"'.', '.'"'.$refVal.'"'.');';
}
推荐阅读
- c# - C# 中没有空格和小写字母的电子邮件验证
- reactjs - 为什么我不能使用我选择的选项的值?
- dotnetnuke - Can't redirect user after login in DNN
- html - 无法点击轮播帖子的链接
- spring - mocking resttemplate exchange always returns null
- javascript - Deleting Service worker cache crashes
- python - 从python中的元素列表绘制直方图
- php - How to replace custom tags with HTML tags?
- java - How can I switch on *.class files to dependencies during build java project?
- angular - 如何根据Angular 6中的条件显示/隐藏li标签