jqGrid setSelect function with parametrized query(带有参数化查询的 jqGrid setSelect 函数)
问题描述
我正在使用 jqGrid,在编辑/添加功能上我想在这些字段之一中有一个下拉列表.
I'm using jqGrid, on edit/add function I want to have a drop down list in one of these fields.
如果我像这样使用 setSelect 函数,这将起作用:
This works if i use the setSelect function as this:
$grid->setSelect("title", "SELECT DISTINCT name,name as TestingName FROM template", true, true, false, array(""=>"All"));
如何将参数传递给我的查询?我试过这些:
How can I pass parameters to my query? I tried these:
1-"SELECT DISTINCT name,name as TestingName FROM template where tempid = ?"
2- "SELECT DISTINCT name,name as TestingName FROM template where tempid = $rowid"
3-"SELECT DISTINCT name,name as TestingName FROM template where tempid = ".$rowid
上述方法均无效:
if(isset ($_REQUEST["tempid"]))
$rowid = jqGridUtils::Strip($_REQUEST["tempid"]);
else
$rowid = "";
推荐答案
如果我正确理解你的问题,你使用 editoptions 和 dataUrl
.您希望 URL 具有附加参数 tempid
,其值应该是当前选定行的 rowid.
If I correct understand your question you use editoptions with dataUrl
. You want to have the URL which has additional parameter tempid
which value should be the rowid of the current selected row.
根据您的问题的语法,我想您使用了一些来自 trirand.net.在这种情况下,您应该使用标签 [jqgrid-php].jqGrid 是纯 JavaScript 开源产品.所以我回答了如何在 JavaScript 中添加 dataUrl
参数.
From the syntax of your question I suppose that you use some commercial jqGrid for PHP product from trirand.net. In the case you should use tag [jqgrid-php]. jqGrid is pure JavaScript open source product. So I answer how you can add dataUrl
parameter in JavaScript.
jqGrid 有 ajaxSelectOptions 选项,可用于修改使用dataUrl
的调用的jQuery.ajax
选项.您可以执行以下操作
jqGrid has ajaxSelectOptions option which can be used to modify the jQuery.ajax
options of the call which use dataUrl
. You can do following
var myGrid = $("#list");
myGrid.jqGrid({
// all your current parameters of jqGrid and then the following
ajaxSelectOptions: {
data: {
tempid: function () {
return myGrid.jqGrid('getGridParam', 'selrow');
}
}
}
});
如果 jQuery.ajax 的 data
参数包含每次调用相应的 jQuery.ajax
时都会调用方法而不是属性.我在 答案.
If the data
parameter of jQuery.ajax contain a method instead of a property the method will be called every time of the corresponding jQuery.ajax
call. I used the same trick in the answer.
这篇关于带有参数化查询的 jqGrid setSelect 函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:带有参数化查询的 jqGrid setSelect 函数
基础教程推荐
- mysqli_insert_id 是否有可能在高流量应用程序中返回 2021-01-01
- 在多维数组中查找最大值 2021-01-01
- WooCommerce 中选定产品类别的自定义产品价格后缀 2021-01-01
- 通过 PHP SoapClient 请求发送原始 XML 2021-01-01
- XAMPP 服务器不加载 CSS 文件 2022-01-01
- 如何在 PHP 中的请求之间持久化对象 2022-01-01
- 在 PHP 中强制下载文件 - 在 Joomla 框架内 2022-01-01
- 在 Woocommerce 中根据运输方式和付款方式添加费用 2021-01-01
- Libpuzzle 索引数百万张图片? 2022-01-01
- 超薄框架REST服务两次获得输出 2022-01-01