gpt4 book ai didi

javascript - 使用 THIS 比使用选择器更有效吗?

转载 作者:行者123 更新时间:2023-11-28 01:34:11 25 4
gpt4 key购买 nike

我有一个简单的表单,用户可以发送他的选票。
我需要知道用户选择了什么单选按钮。
我发现解决它的版本是这个。 How can I get which radio is selected via jQuery?

value = $('input[name=vote]:checked', '#frmSurvey').val();

这个工作正常。即使我不明白它是如何工作的,因为在 Jquery选择器文档只有 2 个示例,项目由逗号分隔。两者都不符合我的示例,其中每个元素都在引号内,然后是逗号

.class , .class ---> $(".intro,.demo") All elements with the class "intro" or "demo"
el1 , el2 , el3 ---> $("h1,div,p") All < h1>, < div> and < p> elements

两者看起来都像 OR 选择器而不是 find A and then find B inside A。

So if anyone can tell me what kind of selector is that I would love to take a look into the documentation

现在是我考虑的优化。如果我已经在 #frmSurvey 的函数中使用 this 元素

不会更快
 $('#frmSurvey').ajaxForm(function () {                                
value = $('input[name=vote]:checked', '#frmSurvey').val();
console.log('working way ' + value);

value = $(this).find('input[name=vote]:checked').val();
console.log('testing way ' + value);

但我无法让第二个版本工作。第二个值让我不确定。

那么我该如何修复第二个版本呢?

第二个版本是否会像我的直觉所暗示的那样比第一个更好,或者我担心太多?

最佳答案

您的第一个示例显示了一个从 context selector 操作的选择器,而您显示的文档显示了 "multiple selectors"选择器。

你似乎已经部分理解了这一点

value = $('input[name=vote]:checked', '#frmSurvey').val();

本质上与

相同

value = $('#frmSurvey').find('input[name=vote]:checked').val();

但是,函数中“this”的上下文并不清楚,因为它取决于 ajaxForm 插件的编码方式。它不一定是您初始选择器的结果。短暂使用该插件后,ajaxForm 上下文中的 this 似乎是 jQuery ajax 请求对象。

关于javascript - 使用 THIS 比使用选择器更有效吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29103483/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com