javascript - 验证 Redux 表单中的 URL

标签 javascript forms reactjs redux redux-form

我正在使用redux-form我的 React Redux 表单的包。我知道如何对其他字段进行验证,例如电子邮件、姓名。

但是,我不知道如何验证 redux 形式的 URL。我应该在 URL 字段中检查什么格式?

const renderField = ({ input, label, type, placeholder, message , meta: { touched, error, warning } }) => (
    <Form.Field >
      <label className="new-font">{label}</label>
      <Input {...input} type={type} className="new-font" placeholder={placeholder} />
      {touched && error &&
        <div>
          <Label
            basic
            color='red'
            pointing
            className="new-font"
          >
          {error}
          </Label>
        </div>
      }

      {(input.name === ('desc') || input.name === ('hyperlink')) ?
       <Message compact>
         {message}
       </Message> : <span></span>
      }
    </Form.Field>
  )

function validate(values){
  const errors ={};
  if(!values.name){
    errors.name='Please let me know who I should thank!';
  }
  if(!values.email){
    errors.email='Please enter an email address';
  }
  if (values.email && !/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i.test(values.email)
  ) {
    errors.email = 'Please enter a valid email address e.g test@gmail.com'
  }
  if(values.desc && values.desc.length > 50 ){
    errors.desc="Key in 50 characters or less";
  }
  if(!values.hyperlink){
    errors.hyperlink="Insert a URL address here to your favourite website!";
  }
  return errors;
}

最佳答案

由于 redux 表单允许您customizeField 组件,您可以使用纯 HTML 创建一个输入字段来验证网址,如下所示:

<input id="my_url" name="my_url" value type="url" placeholder="your website goes here" pattern="https?://.+" required >

关于javascript - 验证 Redux 表单中的 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48280065/

相关文章:

php - 多次点击按钮 - PHP

html - 将数据提交到数据库后将用户重定向到 PayPal

javascript - Todo like app中虚拟DOM的优势是什么

url - ReactJS 路由可选 ID URL 参数

javascript - 如何计算 JavaScript 数组中的字符数?

javascript - 如何创建带有列表提交的表单

javascript - 混合 3 种 hsl 颜色的计算(算法)

javascript - 如何我的切换按钮更改颜色只有我的折叠在我的 bootstrap 3 导航栏中打开

forms - Powershell:从后台作业结果更新 GUI

javascript - 为什么导入类会使此代码失败?