输入类型"日期"没有显示新的价值

时间:2016-09-26 23:47:08

标签: html google-chrome html5-input-date

我的输入类型为" date":

<input type="date" value="2016-08-16"/>

当我加载页面时,我可以看到选择了指定的日期。 enter image description here

但是,如果我尝试选择另一个日期 - 例如2016年8月11日 - 输入中的值不会更新,并且始终是2016年8月16日。

我在Chrome版本53.0.2785.116(64位)中测试页面。我想念元素宣言中的某些内容吗?

1 个答案:

答案 0 :(得分:0)

您需要使用变量处理输入值。

const [user, setUser] = useState({ name: "James", age: 33 });
  const [newUserName, setNewUserName] = useState("");
  const [newUserAge, setNewUserAge] = useState(user.age);

  const changeName = () => {
    setUser({
      name: "Joe",
      age: 25
    });
  };

  function changeUserName(e) {
    setNewUserName(e.target.value);
  }

  function changeUserAge(e) {
    setNewUserAge(e.target.value);
  }

  return (
    <>
      <div>{user.name}</div>

      <div>{user.age}</div>

      <input
        type="text"
        value={newUserName}
        onChange={changeUserName}
        placeholder="new user name"
      />
      <input
        type="number"
        value={newUserAge}
        onChange={changeUserAge}
        placeholder="new user age"
      />
      <button onClick={changeName}> change </button>
    </>
  );