2011-12-14 5 views
2

То, что я пытаюсь достичь, - это что-то вроде окна комментариев на веб-сайте Twitter. Я хочу установить идеальное регулярное выражение, которое может включать формат URL, например htttp: //www.abc.com, abc.com, http://abc.com и www.abc.com. Это должно уменьшить только 20 символов из общего предела текстового поля в 140 символов. После 140 символов пользователю не разрешается вводить код.Комментарий Box like Twitter

Я нашел хороший вариант от github, но у него нет всех этих функций, и я пытаюсь его исправить, но все еще нет успеха. Здесь я дал такую ​​же ссылку для вашей справки. http://jsfiddle.net/FUADn/1/

Что до сих пор не работает для меня:

1) Не в состоянии отслеживать URLs, как: "abc.com", "www.abc.com" и "http://abc.com"

2) Не в состоянии ограничить ввод после 140 символов, он продолжает набирать и показывает текст в красном цвете

из вас может помочь мне с этим, пожалуйста,

+0

«Я пытаюсь исправить это, но все еще нет успеха» - что именно не так и с чем вам нужна помощь? – Rup

+0

Отредактировал мой комментарий, извините за неудобства – user785778

ответ

0

О первом вопросе вы можете попробовать обычный выражение вроде этого:

((http|https):\/\/)?(www\.)?([A-Za-z0-9$_.+!*\(\),;/?:@&~=-])+(\.[A-Za-z0-9]{2,})?(\.[A-Za-z0-9]{2,4}) 

Я не уверен, если это будет достаточно для вашего случая, но вы можете дать ему попробовать.

Что касается второго вопроса, вы можете использовать event.preventDefault(). Например:

$("#post-msg").keypress(function (e) { 
    var a=$("#post-msg").val().length; 

    if (a > 140) { 
     e.preventDefault(); 
    } 
    // ... 
}