Код неверный.Вы должны инициализировать переменную qaParm как Object.Также правильно установите значение переменной someval .Пожалуйста, попробуйте следующий код.
<script>
var somval;
var qsParm = {};
function qs() {
var query = window.location.search.substring(1);
var parms = query.split('&');
for (var i=0; i < parms.length; i++) {
var pos = parms[i].indexOf('=');
if (pos > 0) {
var key = parms[i].substring(0, pos);
var val = parms[i].substring(pos + 1);
qsParm[key] = val;
if(key == 'someval'){
somval = val;
}
}
}
}
function compare(){
if(somval == 1){
alert(1);
$("#radio_1").prop("checked", true);
}else if(somval == 2){
alert(2);
$("#radio_2").prop("checked", true);
};
}
compare();
</script>
Вы также можете использовать приведенный ниже код для извлечения значения строки запроса для любого ключа.в этом случае функция для извлечения значений строки запроса неверна.Попробуйте использовать следующую функцию для извлечения параметров строки запроса.Функция принимает любой URL.Если URL-адрес не передан, он принимает текущий URL-адрес страницы.
function getParameterByName(name, url) {
if (!url) {
url = window.location.href;
}
name = name.replace(/[\[\]]/g, '\\$&');
const regex = new RegExp(`[?&]${name}(=([^&#]*)|&|#|$)`);
const results = regex.exec(url);
if (!results) {
return null;
}
if (!results[2]) {
return '';
}
return decodeURIComponent(results[2].replace(/\+/g, ' '));
}