Javascript/Jquery-won';不能在Safari中更改URL参数,但会在Chrome中更改
我有一个JQuery/JS脚本,它根据select元素中选择的选项更改URL的$\u GET参数。它在Chrome中运行良好,但在Safari 6.1.6中不会更改$\u GET参数或刷新Javascript/Jquery-won';不能在Safari中更改URL参数,但会在Chrome中更改,javascript,jquery,html,google-chrome,safari,Javascript,Jquery,Html,Google Chrome,Safari,我有一个JQuery/JS脚本,它根据select元素中选择的选项更改URL的$\u GET参数。它在Chrome中运行良好,但在Safari 6.1.6中不会更改$\u GET参数或刷新 $("#promjena").change(function () { var v = $("#promjena").val(); var href = window.location.href; if (v === "1") { if (href.includes
$("#promjena").change(function () {
var v = $("#promjena").val();
var href = window.location.href;
if (v === "1") {
if (href.includes("?akcija=kontrola")) {
window.location.href = href.replace("?akcija=kontrola", "?akcija=default");
} else if (href.includes("?akcija=signal")) {
window.location.href = href.replace("?akcija=signal", "?akcija=default");
} else {
window.location.href = window.location.href + "?akcija=default";
}
}
if (v === "2") {
if (href.includes("?akcija=default")) {
window.location.href = href.replace("?akcija=default", "?akcija=kontrola");
} else if (href.includes("?akcija=signal")) {
window.location.href = href.replace("?akcija=signal", "?akcija=kontrola");
} else {
window.location.href = window.location.href + "?akcija=kontrola";
}
}
if (v === "3") {
if (href.includes("?akcija=default")) {
window.location.href = href.replace("?akcija=default", "?akcija=signal");
} else if (href.includes("?akcija=kontrola")) {
window.location.href = href.replace("?akcija=kontrola", "?akcija=signal");
} else {
window.location.href = window.location.href + "?akcija=signal";
}
}
});
试试下面的方法
var v = $("#promjena").attr("value");
或
或
一种可能是
val()
正在返回一个数字,而您在if(v==“1”)
中需要一个字符串,如果这是一个问题,您可以执行以下操作:
var v = $('#promjena').val() + ''; //to convert to string if not
另一个机会是您是否可以通过在更改事件处理程序中执行
console.log(v,href)
并检查值来进一步隔离问题?如果控制台日志返回:undefined undefined,则在之前添加它。必须将Console.log
放在var v=$(“#promjena”).val()之后;var href=window.location.href代码>这两行。你已经放在那里了吗?对不起,我放错了。这是回报:3http://localhost/papirus/kontrolna_lista/index.php?akcija=kontrolaCan 您可以尝试var v=String($(“#promjena”).val()代码>或var v=$(“#promjena”).val()+”
它进入if(v==“1”),但它不会超过if(href.includes(“?akcija=kontrola”){
。我在URL中有?akcija=“kontrola”。使用if(href.indexOf(?akcija=default”)!=-1)
而不是包含
(这是旧浏览器不支持的对Javascript的新添加).但是如果你想的话,你可以填。
var v = parseInt($("#promjena").val()).toString();
var v = $('#promjena').val() + ''; //to convert to string if not
if(href.indexOf("?akcija=default") !== -1)