我有一个简单的表格,所以用户发送他的投票。
在那里,我需要知道用户选择的单选按钮
我发现解决它的版本就是这个。 How can I get which radio is selected via jQuery?
value = $('input[name=vote]:checked', '#frmSurvey').val();
这项工作还可以。即使我不理解这项工作的原因,因为在Jquery选择器文档中只有2个示例,其中项目由昏迷分隔。并且都不匹配我的示例,其中每个元素都在引号内,然后是昏迷
.class,.class ---> $(“。intro,.demo”)所有带有“intro”或“demo”类的元素
el1,el2,el3 ---> $(“h1,div,p”)全部< h1>,< DIV>和< p为H.元素
两者看起来都像是OR选择器,而不是找到A 和,然后在A中找到B.
所以,如果有人能告诉我哪种选择器是我想看一下文档
现在我正在考虑优化。如果我已经在#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);
但是我无法让第二个版本起作用。第二个值让我不明确。
那么我如何修复第二个版本?
根据我的直觉暗示或者我担心太多,第二版会比第一版好吗?
答案 0 :(得分:1)
您的第一个示例显示了使用context selector操作的选择器,而您显示的文档显示了"multiple selectors"选择器。
您似乎已将此部分理解为
value = $('input[name=vote]:checked', '#frmSurvey').val();
与
基本相同 value = $('#frmSurvey').find('input[name=vote]:checked').val();
但是,函数中“this”的上下文不清楚,因为它取决于ajaxForm
插件的编码方式。它不一定是您的初始选择器的结果。在使用插件进行短暂播放后,this
上下文中的ajaxForm
似乎是jQuery ajax请求对象。