gpt4 book ai didi

javascript - 如何以动态形式创建和存储多个输入的值?

转载 作者:行者123 更新时间:2023-12-02 21:51:00 24 4
gpt4 key购买 nike

我有一个表单,用户可以在其中为他想要提交的表单生成新的输入,但是我坚持处理新生成的输入的值,因为我需要将它们存储在 state .

我的代码

const [supply_detail_data,setSupply_detail_data]=React.useState({
suppCashDetail:[{text : [],val:[]}]
});

const addNewSuppDetailInput = () => {
setSupply_detail_data(
{suppCashDetail: [...supply_detail_data.suppCashDetail,{text : [],val:[]}]}
)
}

function supply_detail_handler(event){
// should store the values of inputs in the State
}

JSX

<div className='addNewInput' onClick={addNewSuppDetailInput}>+</div>
{
supply_detail_data.suppCashDetail.map((el,index) => {
let textID='suppDetailText'+index;
let valID='suppDetailVal'+index;
return (
<div key={index}>
•<input type='text'
name={textID}
value={el.text||''}
onChange={supply_detail_handler.bind(index)}
/>

<input type='number'
name={valID}
value={el||''}
onChange={supply_detail_handler.bind(index)}/>
</div>
);

})
}

每次用户按下+时都会生成两个输入,一个是文本类型,另一个是数字类型,我需要知道supply_detail_handler 在值更改时执行,以存储新生成的输入

最佳答案

您需要为每个输入分配一个唯一标识符,稍后您可以在存储中使用该标识符。检查这个例子:https://codesandbox.io/s/muddy-firefly-xz31w

关于javascript - 如何以动态形式创建和存储多个输入的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60132525/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com