2013-05-29 48 views
0

我有一個textarea,其中插入了從自動填充字段中選擇的值, 我想要做的是從textarea獲取更新值。需要從文本區獲取更新的值

假設我在textarea中輸入了三個字符a,b和c 我刪除了字符c。 這個問題我有是 - >當我再次選擇從自動完成字段中輸入字符選擇的字符不顯示在textarea的 ,

字符不會被添加到存儲即HTML代碼。但沒有在textarea中顯示。下面是HTML

<div id="secondary" style="min-width:100px; min-height: 10px; float:left">write any character from a to f 
    <br/> 
    <label for="somechar"></label> 
    <input id="somechar" size="22"> 
    <br> 
    <textarea id="some-log" class="log" class="ui-widget-content"></textarea> 
</div> 

這裏是jQuery和JavaScript代碼

var secondary = [ 
    "a", 
    "b", 
    "c", 
    "d", 
    "e", 
    "f"]; 

下面的功能登錄textarea的該消息。這裏是我需要更新值的地方。 我不知道我可以使用一些東西一樣 var thought= $("textarea#some-log").val();在這裏

function some_log(thought) { 
    $("#some-log").append(thought+ ", ").prependTo("#some-log"); 
} 

$("#somechar") /* this function is required when selecting multiple values */ 
.bind("keydown", function (event) { 
    if (event.keyCode === $.ui.keyCode.TAB && $(this).data("ui-autocomplete").menu.active) { 
     event.preventDefault(); 
    } 
}) 

這是jQuery的自動完成

.autocomplete({ 
    minLength: 0, 
    source: function (request, response) { 
     // delegate back to autocomplete, but extract the last term 
     response($.ui.autocomplete.filter(
     secondary, extractLast(request.term))); 
    }, 
    focus: function() { 
     // prevent value inserted on focus 
     return false; 
    }, 
    select: function (event, ui) { 

     some_log(ui.item ? 
          ui.item.value : 
      "Nothing selected, input was " + this.value); 

     var terms = split(this.value); 
     // remove the current input 
     terms.pop(); 
     // add the selected item 
     terms.push(ui.item.value); 
     // add placeholder to get the comma-and-space at the end 
     terms.push(""); 
     this.value = terms.join(", "); 
     return false; 
    } 
}); 

http://jsfiddle.net/pratik24/MMpDv/

+0

什麼是'extractLast'? –

+0

您的jsfiddle存在一些問題,您需要選擇jQuery框架,然後選擇jQuery UI,如http://jsfiddle.net/arunpjohny/BR223/1/ –

+0

我正在使用自動完成的jquery ui代碼。這裏沒關係。它沒有任何關係更新文本區域 – patz

回答

0

嘗試

function some_log(thought) { 
    $("#some-log").val(function(){ 
     return this.value + thought + ','; 
    }); 
} 

演示:Fiddle

+0

這工作..謝謝你阿倫P Johny。你真的很狼狽。 – patz