Javascript 在React中提交表单时防止再次单击
我的React应用程序中有一个表单,我想在提交后禁用或无法单击Javascript 在React中提交表单时防止再次单击,javascript,asp.net,reactjs,ecmascript-6,react-hooks,Javascript,Asp.net,Reactjs,Ecmascript 6,React Hooks,我的React应用程序中有一个表单,我想在提交后禁用或无法单击Pay按钮。问题是,它不是通过API提交的,而是通过提交的 表格 <form ref={formEl} action="https://sample.aspx" method="POST"> <input name="order" id="order" value={base64String} readOnly type="
Pay
按钮。问题是,它不是通过API提交的,而是通过
提交的
表格
<form ref={formEl} action="https://sample.aspx" method="POST">
<input name="order" id="order" value={base64String} readOnly type="hidden" />
</form>
如果要实现此功能,应使用表单event
onSubmit
。使用任何HTTP客户端(如fetch或axios)调用API。您可以使用状态值来跟踪提交状态
表格
<form ref={formEl} action="https://sample.aspx" method="POST">
<input name="order" id="order" value={base64String} readOnly type="hidden" />
</form>
按钮
<Button onClick={() => onPay(order.id)}>Pay</Button>;
const onPay = (id) => {
formEl.current && formEl.current.submit();
};
onPay(order.id)}>Pay;
状态
const[submiting,setSubmitting]=useState(false)
支付功能
<Button onClick={() => onPay(order.id)}>Pay</Button>;
const onPay = (id) => {
formEl.current && formEl.current.submit();
};
const onPay=(id)=>{
如果(提交)返回;
formEl.current&&formEl.current.submit();
};
提交功能
<Button onClick={() => onPay(order.id)}>Pay</Button>;
const onPay = (id) => {
formEl.current && formEl.current.submit();
};
const onSubmit=async(事件)=>{
event.preventDefault();
设置提交(真);
待命https://sample.aspx');
设置提交(假);
}
如果要实现此功能,应使用表单eventonSubmit
。使用任何HTTP客户端(如fetch或axios)调用API。您可以使用状态值来跟踪提交状态
表格
<form ref={formEl} action="https://sample.aspx" method="POST">
<input name="order" id="order" value={base64String} readOnly type="hidden" />
</form>
按钮
<Button onClick={() => onPay(order.id)}>Pay</Button>;
const onPay = (id) => {
formEl.current && formEl.current.submit();
};
onPay(order.id)}>Pay;
状态
const[submiting,setSubmitting]=useState(false)
支付功能
<Button onClick={() => onPay(order.id)}>Pay</Button>;
const onPay = (id) => {
formEl.current && formEl.current.submit();
};
const onPay=(id)=>{
如果(提交)返回;
formEl.current&&formEl.current.submit();
};
提交功能
<Button onClick={() => onPay(order.id)}>Pay</Button>;
const onPay = (id) => {
formEl.current && formEl.current.submit();
};
const onSubmit=async(事件)=>{
event.preventDefault();
设置提交(真);
待命https://sample.aspx');
设置提交(假);
}
const [_boolValue, setBoolValue] = useState(true);
<Button onClick={() => {
setBoolValue(!_boolValue)
onPay(order.id)
}}>Pay</Button>;
const [_boolValue, setBoolValue] = useState(true);
<Button onClick={() => {
setBoolValue(!_boolValue)
onPay(order.id)
}}>Pay</Button>;
您可以使用
useState
跟踪按钮的单击时间:
const[paid,setPaid]=useState(false)
然后根据上述设置按钮的
启用状态。您可以在onPay
函数中切换布尔值。您可以使用useState
跟踪按钮的单击时间:
const[paid,setPaid]=useState(false)
然后根据上述设置按钮的启用状态。您可以在onPay
函数中切换布尔值。请提供示例,更多infoPls提供示例,更多infoPls提供示例,更多infoPls提供示例和更多信息