作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个内容类型,其中包含一些 cck 字段。其中一个字段的类型为文本,它不是必填字段。因此,这取决于用户是否要填写此字段。
我创建了一个 View 来显示带有此字段的所有记录作为可选的公开过滤器。当我想从下拉列表中应用过滤器“为空(NULL)”时,它会显示混合记录。但我打算只获取此列值为 NULL/EMPTY 的那些记录。
如何配置我的 View 或应用更改以在过滤后获得所需的记录。
最佳答案
回答自己的问题:
我认为当您从运算符中选择 [IS EMPTY (NULL)] 时,这是 drupal 公开过滤器中的一个错误。 drupal 所做的实际上是隐藏文本框。当您因为此文本框为空而点击应用按钮时,它不会包含在 View 查询的 where 子句
中经过一些搜索和分析,我发现 -
在这个文件中 - sites/all/modules/views/js/dependent.js
如果你在我发表评论的地方做出改变
var setChangeTrigger = function(trigger_id, bind_id) {
var changeTrigger = function() {
.....
if (rel_num <= len) {
// Show if the element if criteria is matched
$(object).children(':input').val('');
// EMPTYING THE TARGETED DROPDOWN ON CHANGE
object.show(0);
object.addClass('dependent-options');
}
else {
// Otherwise hide
$(object).children(':input').val('uw');
// PUTTING ANY CHARACTER, WHEN CHANGED EVENT IS CALLED
// AND FROM OPERATOR YOU CHOSE IS EMPTY (NULL).
// IN MY CASE I JUST PUT "uw"
object.hide(0);
}
你会得到我想要的结果。
您可以使用 hook__views_pre_execute() 验证这一点
function myModule_views_pre_execute(&$view){
switch($view->name)
{
case 'YOUR VIEW NAME':
drupal_set_message($view->build_info['query']);
break;
}
}
关于php - drupal 外露过滤器 "is empty (NULL)"下拉菜单不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7791841/
我是一名优秀的程序员,十分优秀!