第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在沒有提交按鈕的情況下提交表單?

如何在沒有提交按鈕的情況下提交表單?

HUH函數 2023-05-25 17:39:54
我想在輸入時提交我的表單而不在 Antd 表單中添加按鈕。有沒有辦法在 React 中做到這一點?我想解決方法只是隱藏按鈕,但不認為這將是最好的方法。
查看完整描述

5 回答

?
藍山帝景

TA貢獻1843條經驗 獲得超7個贊

  1. 在你的組件中存儲antd Form 的ref (用于訪問提交方法

  2. 添加onKeyUp到表格

  3. tabIndex={0}如果你想 onKeyUp 在整個表單上工作而不僅僅是輸入,你需要添加到表單

  4. 輸入 keyCode 為 13,因此您需要像這樣處理 KeyUp:

const SimpleForm = () => {

  const ref = useRef();


  function handleKeyUp(event) {

    // Enter

    if (event.keyCode === 13) {

      ref.current.submit();

    }

  }


  return (

    <Form ref={ref} onKeyUp={handleKeyUp} tabIndex={0}>

      <Form.Item

        label="Username"

        name="username"

        rules={[

          {

            required: true,

            message: "Please input your username!"

          }

        ]}

      >

        <Input />

      </Form.Item>


      <Form.Item

        label="Password"

        name="password"

        rules={[

          {

            required: true,

            message: "Please input your password!"

          }

        ]}

      >

        <Input.Password />

      </Form.Item>

    </Form>

  );

};

或者您可以像這樣在窗口上收聽 keyup 事件:


const SimpleForm = () => {

 const ref = useRef();

  function handleKeyUp(event) {

    if (event.keyCode === 13) {

      ref.current.submit();

    }

  }


  useEffect(() => {

    window.addEventListener("keyup", handleKeyUp);

    return () => {

      window.removeEventListener("keyup", handleKeyUp);

    };

  }, []);


  return (

    <Form ref={ref}>

    .

    .

    .


  );

};


查看完整回答
反對 回復 2023-05-25
?
海綿寶寶撒

TA貢獻1809條經驗 獲得超8個贊

onSubmit在 antd v4 中不可用。改用onKeyPress。


<Form

  form={form}

  onFinish={console.log}

  onKeyPress={(e) => {

    if (e.key === "Enter") {

      form.submit();

    }

  }}

>

    //

</Form>


查看完整回答
反對 回復 2023-05-25
?
冉冉說

TA貢獻1877條經驗 獲得超1個贊

既然你提到了 React,下面的代碼應該在按下時提交表單enter。訣竅是將 onSubmit 屬性添加到表單標簽。

export default class Module extends React.Component {


? constructor() {

? ? super();

? ? this.state = {}

? ? this.handleSubmit = this.handleSubmit.bind(this);


? }


? handleSubmit(e) {

? ? e.preventDefault();

? ? //your code

? }


? render() {

? ? return (

? ? ? <form onSubmit={this.handleSubmit}>

? ? ? ? //form code

? ? ? </form>

? ? );

? }

}


查看完整回答
反對 回復 2023-05-25
?
慕少森

TA貢獻2019條經驗 獲得超9個贊

export default class Module extends React.Component {

  constructor() {

    super();

    this.state = {}

    this.handleSubmit = this.handleSubmit.bind(this);

  }


  handleSubmit(e) {

    e.preventDefault();

    //your code

  }


  render() {

    return (

      <form onSubmit={this.handleSubmit}>

        //form code

        // Hide this button using CSS

       <button type="submit">Submit</button>

      </form>

    );

  }

也許這會奏效。默認情況下,提交按鈕在 catches enter鍵中,所以你不必做任何激進的事情,只需在表單中放置一個提交按鈕并隱藏該按鈕,在回車鍵上它會自動提交表單。


查看完整回答
反對 回復 2023-05-25
?
料青山看我應如是

TA貢獻1772條經驗 獲得超8個贊

你應該在你的輸入中使用 onKeyUp 道具


const handleSubmit = () => {

// function body for submitting data

}


<input

  onKeyUp={(ev) => {

              if (ev.keyCode === 13) {

                handleSubmit();

              }

            }}

/>

<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>

<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>


查看完整回答
反對 回復 2023-05-25
  • 5 回答
  • 0 關注
  • 309 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號