$(".editAd").change({
if ($(this).val() == 1)
{
$("#submitBtn").val("Next Step");
}
else
{
$("#submitBtn").val("Submit Changes");
}
});
此代码的第二行有语法错误。遗失:财产ID后。我发誓这是在条件中正确使用val(),但我想我可能是错的......
我知道这是一个非常简单的解决方案,但是我几分钟的研究都找不到任何资源,我希望SO的用户可以帮助我。 :)
谢谢!
编辑:开发人员总是会犯一个愚蠢的错误,他们会把它们拖延一段时间...总是检查代码的完整性是否有错误,因为开发人员工具可能实际上没有找到正确的错误行,如在这种情况下。答案 0 :(得分:4)
您忘记包含 function(){}
$(".editAd").change(function(){
if ($(this).val() == 1)
{
$("#submitBtn").val() = "Next Step";
console.log($("#submitBtn").val());
}
else
{
(element.attr("name") == "submitBtn").val() = "Submit Changes"; // no idea what this is but it doesn't look like it will work
}
});
答案 1 :(得分:1)
val()
是一个函数执行。
设置值类似
$('selector').val('set me');
不是
$('selector').val() = 'set me';
从那里开始。其他事情可能会消失。
答案 2 :(得分:0)
Missing : after property ID
这是由条件之前缺少function ()
标识符引起的。因为它被括起来{}
,所以javascript解析器认为你传递了一个带有if
的对象文字作为属性标识符。之后正在寻找一个冒号来确定该物业的价值。
<小时/> 不确定你要在这一行上做什么:
(element.attr("name") == "submitBtn").val() = "Submit Changes";
但看起来你试图在布尔值上调用val
,这是无效的。您还要为val()
的输出分配一个字符串,该字符串不起作用。
要为元素赋值,jQuery的val需要一个参数:
element.val("Submit Changes");
答案 3 :(得分:0)
您的代码存在许多问题。首先,您所讨论的错误原因是缺少function
关键字。这是必需的,因为change
方法将函数作为参数。
接下来,您要为val
方法分配一个值,该值不正确($("#submitBtn").val() = "Next Step";
)。您需要将字符串作为参数传递。
第三,你的else
阻止非常混乱。我不确定你在那里做什么,但它会评估像true.val() = "Submit Changes";
那样完全错误的东西。它是函数的另一个赋值,你试图在布尔值上调用该函数,而不是jQuery对象。
所以,基于这一切,这就是我认为你想要做的事情:
$(".editAd").change(function(){
if ($(this).val() == 1) {
$("#submitBtn").val("Next Step");
console.log($("#submitBtn").val());
}
else {
if($(element).attr("name") == "submitBtn") {
$(element).val("Submit Changes");
}
}
});