如果我有一個列表框和文本區域:更新文本區域價值
<textarea id="MyTextArea"></textarea>
<select id="SelectList" multiple>
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option>
</select>
我想做的是......如果有超過0
選擇的選項..然後追加文本There are selections
到textarea。
如果用戶取消選擇選項到有0
選定選項的點,然後從textarea中刪除該字符串,但保留用戶在該textarea中鍵入的任何內容。
以下是我有:
$("#SelectList").change(function(){
var count = $("#SelectList> option:selected").length;
var string = "There are selections.";
var txtVal = $("#MyTextArea").val();
if (count > 0 && txtVal.indexOf(string) == -1) {
$("#MyTextArea").append(string);
}
else if (count > 0 && txtVal.indexOf(string) != -1) {
}
else if (count === 0 && txtVal.indexOf(string) != -1) {
var indexOfString = $("#MyTextArea").value.indexOf(string);
$("#MyTextArea").value.substring(0, indexOfString - 1);
}
});
這適用於添加字符串只有一次。但是,當我取消選擇所有的選項,以便有0
的選擇。我得到這個:
無法獲取的未定義或空引用
財產「的indexOf」在這一行:var indexOfString = $("#MyTextArea").value.indexOf(string);
任何幫助表示讚賞。