2009-11-30 26 views
0

我想提交TextArea的一部分(用戶輸入了多行,並通過突出顯示或將光標放在行上選擇了一行)。如果用戶按提交按鈕,那麼我需要獲取用戶選擇的行或詞。如何使用JS或DHTML或任何其他方式提交TextArea/anyfield的一部分?

只是爲了我的要求認識看下面的例子

例如: - 蟾蜍,SQL服務器:在這裏我們可以輸入多個查詢,當我們按Ctrl + Enter或F9選定的查詢只被提交到數據庫

回答

1

確實做到了,對MS SQL Server 2005中)

var selected = window.getSelection 
    ? function (s, t) 
    { 
     var sel = s.substring(
      t.selectionStart 
      , t.selectionEnd 
     ); 
     return sel.length ? sel : s; 
    } 
    : function (s, t) 
    { 
     var r = document.selection.createRange(); 
     return r.text && t == r.parentElement() 
      ? r.text 
      : s 
     ; 
    } 
; 

var $t = $('#query-textarea'); 
var query = selected($t.val(), $t[0]); 
+0

不幸的是,如果用戶只是把她光標一行,而不是實際創建一個選擇不起作用。然而,對於選擇工作會很好。 :) – 2009-11-30 16:50:12

+0

這是一個很好的迴應:)。 我有點困惑在這裏,你能解釋我如何工作,什麼是論點..對不起,如果它愚蠢,我是新來的JS :) – CFUser 2009-11-30 17:10:23

+0

主要疑問是「var $ t = $('#query-文本區域');」它如何從JS中的文本區獲取? – CFUser 2009-11-30 17:14:05

相關問題