我正在社交媒体上进行编码,并且在我通过Safari浏览器进行检查之前,它一直非常整洁。在这里,它不断抛出我无法解决自己的错误-我已经尝试过;)。一旦您访问我的设置页面,该错误就会出现,我在其中有一个将数据发送到后端的ajax请求。就像野生动物园引擎认为缺少尾部支架。我正在使用jQuery v3.3.1
错误
Error: Syntax error, unrecognized expression: input[name='assault'
(anonymous function) - jquery.js 2:31048
重要的html代码
<form id="settingsForm">
<div>
<label>
<div><img src="images/loggedin/csgo/assault.png"></div>
<div class="hidden"><input type="checkbox" name="assault" value="1"></div>
</label>
</div>
</form>
重要的jQuery代码
$(document).on("submit", "#settingsForm", function(e){
e.preventDefault();
var assault = $("input[name='assault']:checked").val();
if (assault != "1") { assault = ""; }
//doing my ajax request here...
});
答案 0 :(得分:1)
尝试以下方法,看看是否可行。
相反,如果在按名称进行检查时在同一选择器中使用“:checked”,则可以尝试使用is()方法。
if(!$("input[name='assault']").is(":checked")){
// checkbox is not checked
}
此外,您可以检查使用的是哪个版本的Safari,以及是否支持该版本。 jQuery - Browser Support
答案 1 :(得分:-1)
如果您对错误出在哪里感到好奇...可以了。我很快就会删除这个问题
function addColorROLE(toDo){
var roles = ["assault", "sniper", "csgosupport", "assasin", "fighter", "mage", "marksman", "lolsupport", "tank"];
var rolesCsgo = ["assault", "sniper", "csgosupport"];
var rolesLOL = ["assasin", "fighter", "mage", "marksman", "lolsupport", "tank"];
if (toDo == "1"){
var checkChecked = 0;
while (roles.length - 1 >= checkChecked){
if ($("input[name='"+roles[checkChecked]+"'").prop("checked")){
$("input[name='"+roles[checkChecked]+"'").parent().parent().find("img").addClass("pickedRole");
$("input[name='"+roles[checkChecked]+"'").parent().parent().prepend('<div class="selectedCheckedS"><img src="images/overall/check.png"></div>');
} else {
$("input[name='"+roles[checkChecked]+"'").parent().parent().find("img").removeClass("pickedRole");
$("input[name='"+roles[checkChecked]+"'").parent().parent().find(".selectedCheckedS").remove();
}
checkChecked++;
}
} else if (toDo == "2"){
var checkedTwo = 0;
while (rolesLOL.length - 1 >= checkedTwo){
$("input[name='"+rolesLOL[checkedTwo]+"'").prop("checked", true);
$("input[name='"+rolesLOL[checkedTwo]+"'").parent().parent().find("img").addClass("pickedRole");
$("input[name='"+rolesLOL[checkedTwo]+"'").parent().parent().prepend('<div class="selectedCheckedS"><img src="images/overall/check.png"></div>');
checkedTwo++;
}
} else if (toDo == "3"){
var checkedThree = 0;
while (rolesCsgo.length - 1 >= checkedThree){
$("input[name='"+rolesCsgo[checkedThree]+"'").prop("checked", true);
$("input[name='"+rolesCsgo[checkedThree]+"'").parent().parent().find("img").addClass("pickedRole");
$("input[name='"+rolesCsgo[checkedThree]+"'").parent().parent().prepend('<div class="selectedCheckedS"><img src="images/overall/check.png"></div>');
checkedThree++;
}
}
}