我有一个问题。所以基本上我试图创建一个js脚本,当用户点击链接时,它会以不同颜色为链接着色,然后将链接添加到输入框,当用户再次点击同一链接时,将颜色更改回原始颜色并从输入框中删除文本。目的是作为搜索过滤器,您可以在其中添加搜索框,预定义的keywoards。
$('.tagsSelect a').click(function() {
var clickColor = this.style.color;
if(clickColor = "#F5EBD5"){
var value = $(this).text();
var input = $('#popGirlMenu');
input.val(input.val() + value + ', ');
this.style.color="#f5d47f";
return false;
}
if(clickColor = "#f5d47f") {
var value = $(this).text();
var input = $('#popGirlMenu');
input.val(input.val() - value - ', ');
this.style.color="#F5EBD5";
return false;
}
});
这是我的代码,它可以正常工作,在用户再次点击链接时下注,它不会将颜色更改回原始颜色,也不会从输入框中删除文本。
抱歉我的英文不好
答案 0 :(得分:4)
使用CSS作为布局,并检查类而不是颜色值:
<强> CSS 强>
a { color: blue; }
a.selected { color: red; }
<强> HTML 强>
<a href="#">link a</a>
<a href="#">link b</a>
<input id="txt" type="text" />
<强>的JavaScript 强>
$("a").click(function() {
var $this = $(this);
$this.toggleClass("selected");
if ($this.hasClass("selected"))
$("#txt").val($("#txt").val() + $this.text() + ", ");
else
$("#txt").val($("#txt").val().replace($this.text() + ", ", ""));
});
请参阅此jsFiddle
请注意,要从字符串中删除部件,您需要用空字符串替换该部件。 -
不适用于字符串。
答案 1 :(得分:2)
使用==
或===
(比较)代替=
(设置变量)