Javascript jQuery检测单选按钮是由人工更改的还是不是表单提交的

Javascript jQuery检测单选按钮是由人工更改的还是不是表单提交的,javascript,jquery,html,forms,Javascript,Jquery,Html,Forms,我有一个搜索功能和一些过滤器,它们使用单选按钮。如果单选按钮值更改(由人工更改),它将使用jQuery提交表单。我的问题是,如果页面重新加载,我会通过javascript根据URL的GET参数设置单选按钮。它们仍然会被检测为人为行为,我的站点会不断重新加载(循环)。我试图使用originalEvent属性。 如何阻止我的站点循环?刷新时不应重新加载页面。 它适用于某些过滤器,例如price,但其他具有相同功能的单选按钮会导致循环,就像我的流派单选按钮一样 单选更改功能/获取变量助手/设置单选按钮

我有一个搜索功能和一些过滤器,它们使用单选按钮。如果单选按钮值更改(由人工更改),它将使用jQuery提交表单。我的问题是,如果页面重新加载,我会通过javascript根据URL的GET参数设置单选按钮。它们仍然会被检测为人为行为,我的站点会不断重新加载(循环)。我试图使用
originalEvent
属性。 如何阻止我的站点循环?刷新时不应重新加载页面。 它适用于某些过滤器,例如price,但其他具有相同功能的单选按钮会导致循环,就像我的流派单选按钮一样

单选更改功能/获取变量助手/设置单选按钮/文档准备就绪

    $('input:radio').change(function(e){
        if (e.hasOwnProperty('originalEvent')) {
            alert("human change");
            $("#filter_form" ).submit();
        }  
        else{

            alert("not human click");
        }
    }
);



function getQueryVariable(variable) {
  var query = window.location.search.substring(1);
  var vars = query.split("&");
  for (var i=0;i<vars.length;i++) {
    var pair = vars[i].split("=");
    if (pair[0] == variable) {
      return pair[1];
    }
  } 
  console.log('Query Variable ' + variable + ' not found');



function ready_price_filter(){
    var price_filter_value = getQueryVariable('price_filter');
    if (price_filter_value){
        $('#price_' + price_filter_value).click();
        console.log("setting ");
    }
}


$(function(){        
        ready_price_filter();
});
$('input:radio')。更改(函数(e){
if(例如hasOwnProperty('originalEvent')){
警惕(“人类变化”);
$(“#筛选表格”).submit();
}  
否则{
警报(“非人工点击”);
}
}
);
函数getQueryVariable(变量){
var query=window.location.search.substring(1);
var vars=query.split(&);

对于(var i=0;i从服务器端创建一个名为“RadioSet”的隐藏输入字段,如果无线电状态是由GET引起的,则设置为值1?那么您至少知道它是由GET引起的:)@Pekka最聪明的答案。我没有想过。如果您将此作为答案发布,我可以接受。