2011-09-23 80 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; 
}