2011-09-23 125 views
16

對於我的網站,我需要提供阿拉伯語支持。其中的一部分是提供輸入文本框,當用戶輸入時,新的字符必須附加到左側,文本必須右對齊。從右到左文本HTML輸入

的CSS屬性設置爲

text-align:right 

沒有工作,因爲我不能讓光標來到左側,並添加字母那裏。所以我刪除該屬性並添加

direction:RTL 

這裏,光標來到左,文字是右對齊。但是新添加的字符沒有被添加到左側。相反,他們只是追加到右端。

我該如何解決這個問題?請幫助..

例如,請參閱google阿拉伯語頁面搜索框。我需要確切的行爲,雖然不能與那些花哨的鍵盤圖標等,http://www.google.com/webhp?hl=ar

+0

通常 TEXT HERE會做exacly即,但是從形式或這樣,它不會工作接收文本時。 –

+0

你可以發佈你的解決方案嗎? –

回答

21

這是我能想到的:使用direction:RTL

  • 爲右對齊
  • 寫連接到一個JavaScript處理事件:「onkeyup」,它將輸入的字符移到左邊(做一些文本處理)。
+1

的工作完美:) –

+1

艾哈邁德可以請你分享你設法去解決它的方法是什麼? –

+1

小提琴會很好。謝謝 –

7
function rtl(element) 
{ 
    if(element.setSelectionRange){ 
     element.setSelectionRange(0,0); 
    } 
} 




<input type="text" name="textbox" style="direction:RTL;" onkeyup="rtl(this);"/> 

這個代碼就行了。

4

direction:RTL,並且當在系統設置切換到適當的鍵盤(例如阿拉伯),新加入的字符將被正確地追加到左邊使用。

13

您可以在輸入上使用dir =「rtl」。它被支持。

<input dir="rtl" id="foo"/> 
0

在css的輸入中使用。

input { 
    unicode-bidi:bidi-override; 
    direction: RTL; 
}