我正在尝试做一个非常简单的任务,但是由于某种原因我无法做到。
基本上,我正在使用if语句使用javascript更改输入字段的值,但是它不起作用!
这是我的代码:
if (document.getElementById("colour").value == "171515"){
document.getElementById("colour").value = "db0000";
}
if (document.getElementById("colour").value == "db0000"){
document.getElementById("colour").value = "171515";
}
HTML看起来像这样:
<input type="text" id="colour" name="colour" class="colour" value="171515"/>
所以我需要做的是:
我启动一个页面,输入字段在页面上,值为
value="171515"
,然后按一个按钮,这会将输入字段的值更改为value="db0000"
,然后再次按该按钮,并且它将输入按钮的值更改为value="171515"
,我需要执行多次相同的步骤。当前,它似乎进入了循环动作,这就是为什么它不更改输入字段的值! (如我错了请纠正我)。
任何帮助,将不胜感激。
谢谢
编辑:
上面的javascript代码的执行方式如下:
$(params.addPplTrigger).bind('click', function(e){
e.preventDefault();
///////// THE CODE ABOBE WILL GO HERE///////////
}
最佳答案
您只是缺少一个else
:
if (document.getElementById("colour").value == "171515"){
document.getElementById("colour").value = "db0000";
}
else if (document.getElementById("colour").value == "db0000"){
document.getElementById("colour").value = "171515";
}
您原始代码中会发生什么
案例171515:
如果condition评估为true,则第一个,因为值是171515
值更改为db0000
如果条件再次评估为true,则为秒,因为该值现在是db0000
值变回171515
案例db0000:
首先,如果条件获取,则求值为假,因为该值不是171515
值保持不变
如果条件获取,则返回第二个值,因为值为db0000
值更改为171515
因此,在两种情况下,您最终都将获得171515。