jQuery @ 运算符?
所以我正在尝试恢复别人的旧代码。我对 jQuery 不太熟悉,但是 @
运算符指定了什么?
代码是:
v_button_format = $('#' + v_form_id).find('input[@name=button_format]').val();
v_content_type = $('#' + v_form_id).find('input[@name=content_type]').val();
我正在使用 jQuery 1.3,它抛出一个“未捕获的异常:语法错误,无法识别的表达式:[@name=button_format]”错误。是否存在兼容性问题?
So I have someone else's old code that I am trying to restore. I am not too familiar with jQuery, but what does the @
operator specify?
The code is:
v_button_format = $('#' + v_form_id).find('input[@name=button_format]').val();
v_content_type = $('#' + v_form_id).find('input[@name=content_type]').val();
I am using jQuery 1.3 and it's throwing an "uncaught exception: Syntax error, unrecognized expression: [@name=button_format]" error. Is there a compatibility issue?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(7)
这是一个属性选择器。
@
是一种 XPath 主义,在 jQuery 中已不再使用。此外,较新版本的 jQuery 要求属性值用引号引起来。
因此,你应该写
This is an attribute selector.
The
@
is an XPath-ism that is no longer used in jQuery.In addition, newer versions of jQuery require the attribute value to be in quotes.
Therefore, you should write
这意味着
属性
。input[@name=button_format]
表示name属性等于button_format的输入标签
。但是,您需要在最新版本的 jQuery 中删除 @ 并引用 button_format。这意味着
@
不向后兼容。 所以引用文档。That means
attribute
.input[@name=button_format]
meansthe input tag with the name attribute equal to button_format
.You will need to remove the @ and quote button_format in recent versions jQuery, however. This means
@
is not backwards compatible. So quoth the docs.表示名称属性设置为“button_format”的输入字段,即:
means the input field with the name-attribute set to 'button_format', ie:
它是一个已弃用的选择器,您必须将其从代码中删除,因为它不再受支持并且会导致错误。
it's a deprecated selector, you have to remove it from your code as it's no longer supported and will cause errors.
这是旧的做法。
它与(并且应该更改为)相同:
另请注意强制引号
That's the OLD way of doing it.
It is the same as (and should be changed to):
Also note the mandatory quotes
正如其他人提到的属性。
我的 2 美分:该符号的灵感来自 XPath,它也使用
@
表示 (XML) 属性Attribute as others mentioned.
My 2-cents: The notation is inspired from XPath, which also denotes (XML) attributes using an
@
这是旧选择器类型。如果您使用最新的 jQuery,请删除 if @
新方法是
This is old selector type.please remove if @ if you using jQuery latest
new way is