Вопрос по JS

Discussion in 'PHP' started by kravch_v, 31 Oct 2011.

  1. kravch_v

    kravch_v Member

    Joined:
    1 Sep 2011
    Messages:
    134
    Likes Received:
    43
    Reputations:
    1
    Вот собствна форма:

    Code:
    <form action=http://*********.ru method=POST>
    Текст:<br>
    <input type='text' name='text'><br>
    <input type='submit' value='Отправить' /></form>
    
    Как можно реализовать через JS, чтобы в форму (<input type='text' name='text'>) можно было вводить минимум два анлг. слова

    Заранее огромное спасибо
     
    #1 kravch_v, 31 Oct 2011
    Last edited: 31 Oct 2011
  2. Melfis

    Melfis Elder - Старейшина

    Joined:
    25 Apr 2011
    Messages:
    505
    Likes Received:
    105
    Reputations:
    53
    Вопрос неправильный и непонятный. Тебе надо, чтобы чел не мог сделать сабмит формы, если в инпуте < 2 английских слов? Если да и под словами подразумевается осмысленный текст на английском, то
    value.match(/\w+/g).length > count
    где count = 2

    Если вопрос всё таки правильный, то никак и это уже по логике.
     
  3. kravch_v

    kravch_v Member

    Joined:
    1 Sep 2011
    Messages:
    134
    Likes Received:
    43
    Reputations:
    1
    Да, вы правильно меня поняли.
    Будьте добры, покажите как все это будет выглядеть.
    Я в JS не силен, лишь некоторые функции знаю.
     
  4. Melfis

    Melfis Elder - Старейшина

    Joined:
    25 Apr 2011
    Messages:
    505
    Likes Received:
    105
    Reputations:
    53
    HTML:
    <html>
    <head>
    <script type="text/javascript">
    if (!document.attachEvent) {
    	Object.prototype.attachEvent = function (ev,f) {
    		this.addEventListener(ev.replace(/^on/,''), f);
    	}
    }
    
    window.onload = function () {
    	var textArea = document.getElementById('text'),
    		form = document.getElementById('form'),
    		countOfWords = 2;
    
    	document.getElementById('button').attachEvent('onclick',function () {
    		var match = textArea.value.match(/\w+/g);
    		if (match && match.length >= countOfWords) {
    			form.submit();
    		}
    		
    		return false;
    	});
    };
    </script>
    </head>
    <body>
        <form id="form">
    		<input type="text" id="text" />
    		<input type="button" id="button" />
    	</form>
    </body>
    </html>
    
     
    1 person likes this.