Back to blocks

MercadoPago信息捕获与验证

4.0
en前端开发MercadoPagoReact Hooks表单验证

Prompt


generate mercadopago payer information capture with validations in input fields beuty styles, without use form , with react hooks

Resultado Generado

import React, { useState } from 'react';

const App = () => {
  const [payerInfo, setPayerInfo] = useState({
    name: '',
    email: '',
    phone: '',
    address: '',
    city: '',
    zip: ''
  });

  const handleChange = (e) => {
    const { name, value } = e.target;
    setPayerInfo({ ...payerInfo, [name]: value });
  };

  const validateEmail = (email) => {
    const re = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
    return re.test(String(email).toLowerCase());
  };

  const validatePhone = (phone) => {
    const re = /^\+?\d{10,15}$/;
    return re.test(String(phone));
  };

  const handleSubmit = (e) => {
    e.preventDefault();
    if (!validateEmail(payerInfo.email)) {
      alert('Please enter a valid email address.');
      return;
    }
    if (!validatePhone(payerInfo.phone)) {
      alert('Please enter a valid phone number.');
      return;
    }
    alert('Payer information submitted successfully!');
  };

  return (
    <div className="min-h-screen bg-gradient-to-br from-blue-50 to-indigo-100 p-8">
      <div className="max-w-2xl mx-auto bg-white p-8 rounded-lg shadow-lg">
        <h1 className="text-2xl font-bold text-indigo-600 mb-6">Payer Information</h1>
        <div className="space-y-4">
          <InputField label="Name" name="name" value={payerInfo.name} onChange={handleChange} />
          <InputField label="Email" name="email" value={payerInfo.email} onChange={handleChange} />
          <InputField label="Phone" name="phone" value={payerInfo.phone} onChange={handleChange} />
          <InputField label="Address" name="address" value={payerInfo.address} onChange={handleChange} />
          <InputField label="City" name="city" value={payerInfo.city} onChange={handleChange} />
          <InputField label="ZIP Code" name="zip" value={payerInfo.zip} onChange={handleChange} />
          <button
            onClick={handleSubmit}
            className="w-full bg-indigo-600 text-white px-4 py-2 rounded-md hover:bg-indigo-700 transition duration-300"
          >
            Submit
          </button>
        </div>
      </div>
    </div>
  );
};

const InputField = ({ label, name, value, onChange }) => (
  <div>
    <label className="block text-sm font-medium text-gray-700 mb-1">{label}</label>
    <input
      type="text"
      name={name}
      value={value}
      onChange={onChange}
      className="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-indigo-500"
      required
    />
  </div>
);

export default App;

Más Recomendaciones

Ver Todo

React 登录锚点点击

前端开发en
4.0

on click anchor tag in React component require a login for this content

React登录锚点15/6/2025

React智能家居能源监控仪表盘

前端开发en
4.0

I’m building a frontend-only Smart Home Energy Monitoring Dashboard using React, Tailwind CSS, and ShadCN UI, styled in a GitHub-dark theme. The interface displays real-time metrics like temperature, voltage, power, and load in responsive cards, includes smart ON/OFF control, a simulated barcode scanner to register devices, and shows AI-generated energy-saving suggestions and alerts. I want to expand it by adding live barcode scanning via webcam, energy usage charts (using Recharts), a scheduling UI for automation, and an AI chatbot panel for usage tips. The goal is to make the dashboard fully interactive, responsive, and ready to integrate with future backend or IoT data.

React智能家居能源监控15/6/2025

React Fetch API 示例

前端开发en
4.0

get me the correct react code for obtain https://www.technosysa.com/new_announce.php?mode=get_announce&id=17

ReactFetch APIHTTP Request14/6/2025

解决数据获取失败

前端开发en
4.0

check why failed to fecth here: useEffect(() => { const fetchData = async () => { try { const response = await fetch(`https://www.technosysa.com/new_announce.php?id=${idParam}&mode=get_announce`, { method: 'GET', headers: { 'Content-Type': 'application/json', }, }); const data = await response.json(); console.log(data); setItem({ id: idParam, description: data.description, Name_person: data.Name_person, telefono: data.telefono, whatsapp: data.whatsapp, email: data.email, file_path_user_jpg: data.file_path_user_jpg, }); } catch (error) { console.error('Error fetching data:', error); } }; fetchData(); }, [idParam]);

ReactuseEffect数据获取14/6/2025

美化WhatsApp按钮代码

前端开发en
4.0

make beautiful the following code please, with style whatsapp dont using @import <button className='whatsapp-button' onClick={openWhatsApp}> <i className="fa fa-whatsapp"></i> Comunicate con él al instante por WhatsApp </button>

WhatsApp按钮代码美化React14/6/2025

现代CSS美化代码

前端开发en
4.0

plase make very beauty and modern css the following code without use @import: <div className="App"> <header className="App-header"> <br /> <br /> <div className="row"> <div className="alignleft"> <i className="fa fa-bolt fa-3x"></i> </div>&nbsp&nbsp <form method="post" action="anuncia_new.php?mode=modificar"> <strong>{description}</strong> {/* \n" */} <div> {Name_person}<br />{telefono}<br />{email} </div> <input name="description" type="hidden" value={description}/> <input name="email" type="hidden" value={email}/> <input name="telefono" type="hidden" value={telefono}/> <input name="Name_person" type="hidden" value={Name_person}/> <input name="id" type="hidden" value={id}/> <br/> <button className="btn btn-success btn-lg" type="submit" >Modificar</button> </form> </div> <br/> {file_path_user_jpg && <> <div className="row "> <div className="center-block"> <div className="col-md-3 "> <div className="gradient-box"> <a target="_blank" rel='noreferrer' href={file_path_user_jpg}> <img src={file_path_user_jpg} alt="" style={{width:"150px"}} /> </a></div> </div> </div> </div> <br /> <br /> </> } <br /> <br /> <br /> </header> </div>

CSS前端开发代码优化13/6/2025