如何使用 currentTarget 和来自不同 HTML 元素的 jQuery 设置一些值?

How can I set some values using currentTarget with jQuery from different HTML elements?

任何人都可以帮助我吗?

我试图根据单击哪个按钮获取不同的值并将其分配给变量。

一位朋友告诉我稍后通过 e.currentTarget 提取将输入中的值添加到,但我无法使其工作。

HTML:

<div class="curso-contenedor">
        <div class="curso">

            <input id="precio" value='12000' hidden>
            <input id="cursoNombre" value='Web Developer' hidden>
        
            <form><button class="btn-curso web-developer" id="webDeveloper">Agregar</button></form>
            
        </div>
        <div class="curso">

            <input id="precio" value='13000' hidden>
            <input id="cursoNombre" value='Marketing Digital' hidden>
            
            <form><button class="btn-curso marketing-Digital" id="marketinDigital">Agregar</button></form>

        </div>
        </div>

jQuery:

$('.btn-curso').click(function(e){

  let curso  = {'precio': e.currentTarget('#precio'), 'curso': e.currentTarget('#cursoNombre')};

  localStorage.setItem('datosCurso', JSON.stringify(curso));

  e.preventDefault()
});

如果有人知道如何做到这一点,如果你能帮助我,那将意味着世界,因为我已经被困了好几天了,现在正在尝试不同的事情。

试试这个: HTML

    <div class="curso-contenedor">
        <div class="curso">

            <input name="precio" value='12000' hidden>
            <input name="cursoNombre" value='Web Developer' hidden>
        
            <button class="btn-curso web-developer" id="webDeveloper">Agregar</button>
            
        </div>
        <div class="curso">

            <input name="precio" value='13000' hidden>
            <input name="cursoNombre" value='Marketing Digital' hidden>
            
            <button class="btn-curso marketing-Digital" id="marketinDigital">Agregar</button>

        </div>
    </div>

JQuery:

        $('.curso-contenedor').on('click', '.curso', function(e){

            let curso  = {
                'precio': $(e.currentTarget).find('input[name=precio]').val(),
                'curso': $(e.currentTarget).find('input[name=cursoNombre]').val()
            };

            localStorage.setItem('datosCurso', JSON.stringify(curso));


            e.preventDefault()
        });

您应该向父元素添加委托事件侦听器

更多信息:https://api.jquery.com/on/