从按钮列表中删除某些文本值

时间:2014-09-28 15:05:36

标签: javascript jquery html css button

我有一个按钮列表。单击一个时,它会将文本“selected”添加到按钮的现有值。

单击一个按钮时,如果文本在那里,我想从其他按钮中删除“选定”文本。

基本上它应该是 - 循环遍历区域中的所有按钮(它们都有一个searchResult类)并从每个按钮中删除“selected”值(如果它在那里)。

以下是每个按钮的代码:

<input type="button" class="searchResult" onclick="$(\'#usersToSend > *\').css(\'background-color\', \'#fff\');
var oldValue = this.value;
this.value=\'(selected) \' + oldValue; this.style.backgroundColor = \'#51CA3E\';
document.getElementById(\'hiddenUserFlag\').value = \''.$row['id'].'\';"
value="'.$row['username'].'">

这是要注意的代码位:

$(\'#usersToSend > *\').css(\'background-color\', \'#fff\');
var oldValue = this.value;
this.value=\'(selected) \' + oldValue;
this.style.backgroundColor = \'#51CA3E\';

1 个答案:

答案 0 :(得分:1)

您可以使用:contains()选择器和text()方法,如下所示:

&#13;
&#13;
$("button").click(function(){
  $("button:contains('selected')").text(function(){
    return this.innerHTML.replace("selected","");
  })
  this.innerHTML+= "selected";
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button>button-</button>
<button>button-</button>
<button>button-</button>
&#13;
&#13;
&#13;

更新:上述内容不适用于<input>按钮。对于那些,请使用.filter().val()方法:

&#13;
&#13;
$(":input").click(function(){
  $(":input").filter(function(){
    return this.value.indexOf("selected") > 0
  }).val(function(){
    return this.value.replace("selected","");
  })
  this.value+= "selected";
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="button" value="button-" />
<input type="button" value="button-" />
<input type="button" value="button-" />
&#13;
&#13;
&#13;