社区首页 >问答首页 >使用LIKE运算符选择所有与模式匹配的复选框

使用LIKE运算符选择所有与模式匹配的复选框
EN

Stack Overflow用户
提问于 2015-06-25 17:11:32
回答 2查看 250关注 0票数 0

我需要一点指导。我有一个HTML表单,它由一个非常长的项目列表组成,这些项目是从一个数据库查询生成的数组中拉出的(这是一个大学课程列表)。用户需要能够选择与他们的研究相关的尽可能多或尽可能少的课程:因为列表可以有数百个或多个项目,所以我有“全选”和“不选”功能,并添加了jQuery shift-select批量选择器,以使这一点尽可能简单。

但是,我也希望他们能够在输入框中输入一些文本,然后单击APPLY以选中标签文本模式使用LIKE操作符匹配的所有复选框(即,如果他们想要所有数学课程,或所有2xx级别的课程)。该项目使用PHP和JavaScript/jQuery/AJAX。

我知道如何基于LIKE查询从数据库中提取数据,但我只是有点困惑于如何最好地遍历生成的表单并将表单中的项作为目标。(我的PHP相当强大,我的jQuery有点不稳定)。

复选框列表是通过循环遍历数组生成的,每个项目的设置如下所示:

代码语言:javascript
代码运行次数:0
复制
$o .= '<input id="'.$rw[2].'_'.$rw[0].'"
type=checkbox  name="' . $rw[2].'_'. $rw[0]. '" />';
$o .= '<label for="'.$rw[2].'_'. $rw[0].'"> ' . $rw[1] . '</label>';
$o .= '</td>';

因此,我们最终得到了一个简单的复选框表单,其中包含一个标签和标签文本,并且所有项都被命名为数组键。

以下是典型项目的HTML输出:

代码语言:javascript
代码运行次数:0
复制
<tr><td><input id="110_105" type=checkbox name="110_105" />
<label for="110_105"> PHIL233</label></td></tr>

抱歉,如果这个描述有点长,但我需要的是一个想法,如何在生成后循环通过表单的元素,以选中模式匹配的每个项目的复选框。

希望这是有意义的!

塔姆拉

EN

回答 2

Stack Overflow用户

发布于 2015-06-25 18:13:27

这种情况非常适合使用AJAX过滤复选框列表。相反,我极力主张这样做。

但是如果你的需要在客户端进行过滤,使用JavaScript就相当简单了。

代码语言:javascript
代码运行次数:0
复制
//give the labels a class so they are easy to find
var labels = document.getElementsByClassName('course-name');
//filtering text field
var query = document.getElementById('query');
//'apply' button
var queryBtn = document.getElementById('query-submit');

queryBtn.addEventListener('click', function() {

    for (var i = 0; i < labels.length; i += 1) {

        var label = labels[i];
        var text = label.innerText;

        if (text === query.value) {

            label.previousElementSibling.checked = true;
        }
    }

}, false);
票数 0
EN

Stack Overflow用户

发布于 2015-06-25 18:17:19

您可以使用jQuery find方法进行尝试。

http://api.jquery.com/find/

有了它和“属性包含选择器”,你就可以做到这一点。

http://api.jquery.com/attribute-contains-selector/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31056614

复制
相关文章
ThinkPHP like模糊查询,like多匹配查询,between查询,i
字符串式即是原生式,数组式查询语句因书写方式与特定字符的原因比较复杂,下面为大家例出了常用的ThinkPHP数组式查询语句的使用方法
子润先生
2021/07/13
2.2K0
VBA专题04:Like运算符详解
1.<字符串>为文本字符串或者对包含文本字符串的单元格的引用,是要与<模式>相比较的字符串,数据类型为String型。
fanjy
2019/09/09
2.4K0
VBA专题04:Like运算符详解
hive like与rlike的区别
项目github地址:[bitcarmanlee easy-algorithm-interview-and-practice](https://github.com/bitcarmanlee/easy-algorithm-interview-and-practice) 欢迎大家star,留言,一起学习进步
全栈程序员站长
2022/09/17
1.5K0
软件测试|SQL中的LIKE模糊匹配该怎么用?
在SQL(Structured Query Language)中,LIKE是一种用于模糊匹配的操作符。通过使用LIKE,我们可以根据模式匹配的方式进行数据检索,而不仅仅局限于完全匹配。本文将详细介绍SQL中LIKE操作符的语法、用法以及一些示例,帮助您掌握模糊匹配的技巧。
霍格沃兹测试开发Muller老师
2023/08/20
3390
七、IN和LIKE的使用
在 WHERE 子句中优势我们需要查询包含某个字符串的所有记录,这是就需要用到运算符 LIKE 。语法如下:
喵叔
2021/06/25
8330
3分钟短文|Laravel 使用like匹配字符串的用法示例
本文接着laravel的功能讲解,说一说在模型中查询条件内,使用like这样的SQL关键字 进行子字符串匹配。并通过几个示例,和不同的实现方法,为大家展示laravel的灵活性。
程序员小助手
2020/08/26
2.1K0
scala 模式匹配的几个模式
Scala 的模式匹配是类似与正则匹配的的模式匹配,但是不仅仅如此,它还可以匹配对象的内在的构建形式.
Tim在路上
2020/08/04
1.2K0
模式匹配
如果在不设置全文搜索的情况下,如何过滤查询结果,您会选择哪种方法?LIKE也许是最容易想到的:
yzsDBA
2021/02/03
9760
模式匹配
匹配操作符(绑定操作符): =~、!~ =~检验匹配是否成功:result= var =~ /abc/;若在该字符串中找到了该模式,则返回非零值,即true,不匹配则返回false。
生信补给站
2020/08/06
1.7K0
JS控制批量选择/取消复选框
场景应用:在后台分页输出查询数据(如文章、评论),往往需要进行批量删除/审核等操作。后端程序需要读取操作的ID集合进行批量处理。而前端批量选择传入ID是最方便的使用方式。而批量传入通过使用复选框的[]方式传入数组给后端就是最便捷的办法了。直接上代码:
世纪访客
2018/08/02
9.7K0
JS控制批量选择/取消复选框
Scala 的模式匹配
最近开始学习 Scala,相较于学习 Haskell 的过程来看,Scala 真是直观得多,友好得多,更容易上手。以前写过关于从熟悉的 Java 和 JavaScript 来逐步学习 Groovy 和 Haskell 的文章,这以后再来学习 Scala 的话,就可以不断比较了。如果和我一样有 Java 经验的话但是从来没有接触过 Scala 的话,建议先阅读这篇文章,A Scala Tutorial for Java Programmers,一边比较,一边熟悉,同时配套的还有这个,Scala for Java programmers – Joakim Ohlrogge & Enno Runne,Youtube 上的视频,很直观,然后再从 Scala 官网的文档上面逐步涉入。
四火
2022/07/19
9820
Scala 的模式匹配
Scala入门与进阶(五)- 模式匹配
6.模式匹配 1.最基础的模式匹配 Java: 对一个值进行条件判断,返回针对不同的条件进行不同的处理 Scala: 变量 match { case value1 =>代码1, case value2 =>代码2, ... case _ => 代码N } object MatchApp extends App { val names = Array("zhangsan","lisi","wangwu") val name = names(Random.nextInt(names.length)) nam
Meet相识
2018/09/12
5110
Scala入门与进阶(五)- 模式匹配
iptables的使用与基本扩展匹配的使用
扩展匹配所需要的扩展模块:/usr/lib64/xtables/,大写的扩展模块是TARGET;小写的模块可以做匹配条件.
小柒吃地瓜
2020/04/23
1.2K0
JavaScript 替换所有匹配内容
由于JavaScript 的 replace 只能替换一次,因此另外编写一个能现替换全部匹配内容方法,代码如下:
用户1289394
2021/10/13
1.7K0
算法基础-字符串与模式匹配
在计算机中,串的最广泛的用处是字符串,因此一般情况下,串和字符串是等价的,字符串也简称为串,串就是字符串
DearXuan
2022/02/21
8290
Rust模式匹配
模式匹配是从函数式编程语言(例如:Haskell,Lisp)吸收而来的,用于为复杂的类型系统提供一个轻松的解构能力。rust使用match来提供模式匹配的功能。mathc类似于其它编程语言中的switch-case,但是远比switch-case强大。match的通用模式如下所示。
zy010101
2023/02/27
1.5K0
有趣的Scala模式匹配
它被称为模式匹配,模式匹配包含了一系列以case关键字开头的分支,每一个分支包含一个模式或者是多个表达式。模式有很多种,例如常量模式('*',1),变量模式(可以匹配任何值),通配模式(又见面了,'_'符号),构造方法模式(类似于样例类的初始化)等等。 用一个例子简单说明就是:
哒呵呵
2018/08/06
1.1K0
Rust中的模式匹配
在其它一些语言中,let x = 5 之类的语句,仅仅只是赋值语句。但是在rust中,可以换个角度理解,认为5这个值匹配到了x变量。如果觉得有些牵强,可以再来一个示例:
菩提树下的杨过
2021/11/30
1.8K0
Rust中的模式匹配
Swift中的模式匹配
Swift 作为一门现代语言,除去安全,快速等特性之外,还有个明显有别于其他语言的特性,就是巨量细致入微的语言特性。类似iOS API,初学者觉得繁杂,无从下手,但是熟悉之后,绝对能少写不少代码。
小刀c
2022/09/21
1.8K0
点击加载更多

相似问题

Pyspark SQL使用LIKE not working选择与模式匹配的所有行

227

如何使用Like运算符与Joins进行匹配

20

在所有JSONB字段上与LIKE/ILIKE匹配Postgres模式

12

mysql LIKE运算符与条件不匹配

10

TSQL -使用Like进行模式匹配

40
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档