【问题标题】:how to validate the minlength and maxlength of textarea?如何验证 textarea 的最小长度和最大长度?
【发布时间】:2020-12-03 05:52:15
【问题描述】:

我想在提交前验证 textarea 的 minlength 和 maxlength,谁能告诉我详细信息?

<form id="contact-je" action="<?php echo JURI::current(); ?>" method="post">

  <div class="input">
      <label id="je_hide_message" for="message"><?php echo JText::_("$message"); ?></label>
      <textarea name="je_message" id="message" class="requiredField" rows="4"
                placeholder="<?php echo $message; ?>"><?php if (isset($_POST['je_message'])) {
              if (function_exists('stripslashes')) {
                  echo stripslashes($_POST['je_message']);
              } else {
                  echo $_POST['je_message'];
              }
          } ?></textarea>
      <?php if (!isset($_SESSION)) {
          if ($messageError != '') { ?><span
                  class="error"><?php echo $messageError; ?></span><?php }
      } ?>
  </div>
  <div class="input">
      <button name="submit" type="submit"
              class="je_button"><?php echo JText::_("$submit") ?></button>
      <input type="hidden" name="submitted" id="submitted" value="true"/>
  </div>
</form>
<?php } ?>
</div>

【问题讨论】:

  • 我的表单下面的脚本: 是否可以在 SCRIPT 中添加一些代码来验证 texarea 长度?
  • 这能回答你的问题吗? textarea character limit

标签: php jquery forms


【解决方案1】:

如果允许使用浏览器功能,只需设置&lt;textarea&gt;minlengthmaxlength属性即可。

<form>
  <textarea minlength="5" maxlength="10"></textarea>
  <input type="submit">
</form>

【讨论】:

    【解决方案2】:

    我添加了以下代码,但是如果输入超过 300 个字符,表格仍然会提交。字数超过300我不想提交

    // Validate error
                                $('form#contact-je').submit(function () {
                                $('form#contact-je .error').remove();
                                var hasError = false;
                                $('.requiredField').each(function () {
                                    if ($.trim($(this).val()) == '') {
                                        var labelText = $(this).prev('label').text();
                                        $(this).parent().append('<span class="error">Pls enter ' + labelText + '!</span>');
                                        $(this).addClass('invalid');
                                        hasError = true;
                                    } else if ($(this).hasClass('email')) {
                                        var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
                                        if (!emailReg.test($.trim($(this).val()))) {
                                            var labelText = $(this).prev('label').text();
                                            $(this).parent().append('<span class="error">You\'ve entered an invalid ' + labelText + '!</span>');
                                            $(this).addClass('invalid');
                                            hasError = true;
                                        }
                                    }
                                });
    
        //Limit message characters
        $('#message').keyup(function() {
        if ($(this).val().length > 300){
           $(this).parent().append('<span class="error">ffffff</span>');
                                            $(this).addClass('invalid');
                                            hasError = true;
        }
        
        });
                                if (!hasError) {
                                    var formInput = $(this).serialize();
                                    $.post($(this).attr('action'), formInput, function (data) {
                                        $('form#contact-je').slideUp("fast", function () {
                                            $(this).before('<span class="success"><strong>Thank you!</strong> We have received your email.<br />We will get back to you in 12 hours.<br />-- Pneuflex China</span>');
                                        });
                                    });
                                }
                                return false;
                            });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-07
      • 1970-01-01
      • 1970-01-01
      • 2016-02-29
      • 2017-11-18
      • 1970-01-01
      相关资源
      最近更新 更多