为什么这个 JavaScript 正则表达式不起作用?

发布于 2024-11-01 06:18:07 字数 359 浏览 3 评论 0原文

由于某种原因,这不起作用,但我所有的搜索都表明它应该起作用。

我在一个元素上有一个 id,我试图将值增加 1。

所以假设我

<input id="someText1">

想将 1 更改为 2,所以我最终

<input id="someText2">

尝试使用以下命令仅匹配文本

text = $("input").attr("id").match(/^[a-zA-Z]+$/);

但是当我输出文本的值,我得到 null

请帮助!

For some reason this is not working, yet all my searches say it should work.

I have an id on an element where I am trying to increment the value by 1.

so let's say I have

<input id="someText1">

I want to change the 1 to a 2, so I end up with

<input id="someText2">

I've tried to match just the text using

text = $("input").attr("id").match(/^[a-zA-Z]+$/);

But when I output the value of text, I get null

Please help!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

疾风者 2024-11-08 06:18:07

删除 $ 符号(文本确实以数字结尾,而您告诉它它以字母结尾)

Remove the $ sign (the text does end with a number and you're telling it that it ends with a letter)

迟到的我 2024-11-08 06:18:07

你的正则表达式应该是

text = $("input").attr("id").match(/^[a-zA-Z0-9]+$/);

Are you after this?

var text = $("input").attr("id").replace(/[0-9]+$/, "");
var num = $("input").attr("id").replace(/^[a-zA-Z]+/, "");

Your regular expression should be

text = $("input").attr("id").match(/^[a-zA-Z0-9]+$/);

Are you after this?

var text = $("input").attr("id").replace(/[0-9]+$/, "");
var num = $("input").attr("id").replace(/^[a-zA-Z]+/, "");
一紙繁鸢 2024-11-08 06:18:07

match 选择器必须与 ID 完全相同,并且由于您的正则表达式匹配仅包含 az 和 AZ 的任何字符串,因此它与 someText1 不匹配!你应该尝试

^[a-zA-Z]+[0-9]$

The match selector must equal the ID exactly, and as your regex matches any string containing ONLY a-z and A-Z, it doesn't match someText1! You should try

^[a-zA-Z]+[0-9]$
无言温柔 2024-11-08 06:18:07

我建议使用类名选择器,例如 $('.inputs') 因为它比获取页面上的所有输入元素然后按 id 过滤(尤其是在现代浏览器中)要快)。

I would suggest using a class name selector, such as $('.inputs') as it will be faster than getting all the input elements on the page and then filtering by id (esp. in modern browsers).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文