添加“必填”以选择框

时间:2019-04-03 10:15:20

标签: javascript jquery html5

我有一个国家/地区选择框,如果选择了美国,则显示一个国家/地区选择框。我正在使用以下jQuery实现此目标:

$(function() {
    $('#country').change(function(){
        $('.state').hide();
        $('#' + $(this).val()).show();
    }).trigger('change');
});

如果选择了美国,是否可以修改上述内容以在状态选择框中添加必填属性?

状态选择框位于以下DIV中

<div id="USA" class="state" style="display:none">

</div>

非常感谢,

约翰

2 个答案:

答案 0 :(得分:2)

为此使用prop()方法:

$("#country").on("change", function() {
  let $state = $("#state");
  
  if ($(this).val() == "EUA") {
    $state.prop("required", "required");
  }
  else {
    $state.prop("required", null);
  }
}).change();
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<form>
  <select id="country">
    <option>EUA</option>
    <option>Other</option>
  </select>

  <select id="state">
    <option></option>
    <option>A</option>
    <option>B</option>
  </select>
  
  <button>Save</button>
</form>

  • prop("required", "required")添加属性;
  • prop("required", null)将其删除。

答案 1 :(得分:0)

您可能需要先检查所选的值,然后才能使用import React, { Component } from 'react' import axios from 'axios' import Timeline from './Timeline' class Profile extends Component{ state = { user: {} } componentDidMount() { axios.get(`http://localhost:8090/user/${this.props.match.params.id}`) .then(res =>{ const user = res.data this.setState({ user: user }) }) } render(){ return( <div> <h1>This is the profile page of { this.state.user.username }.</h1> <img src={this.state.user.profilePicture} ></img> <h3> E-mailaddress: { this.state.user.mail }</h3> {typeof(this.state.user.id) !== 'undefined' ? <Timeline id={this.state.user.id}/> : ''} </div> )} } export default Profile

prop()/removeProp()