簡體   English   中英

react / nodejs:從選擇下拉列表中接收值以將其發送到數據庫

[英]react/nodejs: Receiving value from a select dropdown to send it to the database

我在我的反應前端中有一個選擇下拉列表

 <select name="level" value={level} onChange={this.handleChange} className="form-control"> <option>Begineer</option> <option>Intermediate</option> <option>Advanced</option> </select> 

我在后端將這個值作為req.body處理。 我的handleChange函數很簡單

 handleChange(event) { const state = this.state; state[event.target.name] = event.target.value; this.setState({ state }); } 

當我提交表單時,此值不會被提交。 我還在我的構造函數中初始化了該值。 在這種情況下我該怎么辦?

一定是

  this.setState(state)

首先,您需要將價值推廣到您的選擇中

  <option value="Begineer">Begineer</option>

第二,永遠不要在沒有設置狀態的情況下直接改變狀態對象

  state[event.target.name] = event.target.value;

代替

 let objToUpdate = {...state};
objToUpdate[event.target.name]=  event.target.value
this.setState(objToUpdate)

這應該可以解決您的問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM