在点击函数中调用函数

我有一些图像和一个表单,其中有一个输入文本、一对单选按钮和一个选择选项,每次我选择一个单选按钮和一个选项时,它们都会被禁用,并且在 '单击 guardar cambios 的按钮,当我选择一个选项(在示例中它是选项 1)和一个图像它更改为另一个但我想要的是,以防万一这个人选择了错误的选项,撤消它,所以我创建了一个函数,它有三个参数,即 radio 和 select 的值以及所选图像的类,我在“seleccionar”中调用它,在那里我重置了这三个元素的值,然后我把它放在 click 函数中(撤消按钮)。https://codepen.io/luzsdx/pen/ExKqwXP

我遵循了如何从另一个点击事件函数中的点击事件调用函数?

但问题是,当我选择一个图像时,它不会被另一个替换,有人能告诉我我做错了什么吗?谢谢,我在控制台中收到“类未定义”错误

 function deshacer (classes, valorRadio, valorSelect) {

        $(valorRadio).prop("selectedIndex", 0).attr('disabled', false);

        $(valorSelect).val('none').attr('disabled', false)

        $(`div.${classes}>object`).attr('data', 'diente.svg')

    }



    $('.deshacer').on('click', function(e){

        e.preventDefault()

        deshacer(classes, valorRadio, valorSelect)

    })



    function seleccionar(valorSelect, valorRadio, classes, idImg) {

        if (valorSelect) {

            if (confirm('¿Seleccionar pieza Nro ' + classes + '?')) {

            } else {

                return false

            }

        }

        if (valorRadio == 'rojo') {

            if (valorSelect == 2) {

                alert('Extracción indicada es una prestación requerida.')

                $('#tratSelect').val('none')


            } else if (valorSelect == 1) {

                $(`div.${classes}>img`).attr('src', 'https://cdn-0.emojis.wiki/emoji-pics/lg/red-circle-lg.png')


            } 

        }

  deshacer(classes, valorRadio, valorSelect)


    } 


温温酱
浏览 147回答 1
1回答

白衣非少年

全局变量初始全局变量,以便可以在函数内部调用值,在你的顶部添加那些var valorSelectValue;var valorRadioValue;var classesValue;var idImgValue;现在,大部分时间你可以保存,更新这些变量的选择有时他们称之为公共/私有变量取决于你的需要并且可以在你的函数中调用它,在其他一些情况下你可能会使用this.valorSelectValue;局部变量:当您初始化在函数中定义的局部变量时。它们具有局部作用域,这意味着它应该在定义它们的函数中使用。全局变量:它们是在函数外部定义的变量。这些变量具有全局范围,因此它们可以被任何函数使用,而不需要将它们作为函数的参数传递。接下来,添加名为的新类defaultImage.defaultImage {content:url("https://www.tacoshy.de/Images/teeth.png");    background-repeat: no-repeat;    width: auto; /*or your image's width*/    height: auto; /*or your image's height*/    margin: 0;    padding: 0;}在你的函数中seleccionar我实现了新的逻辑function seleccionar(valorSelect, valorRadio, classes, idImg) {......} else if (valorSelect == 1) {...// Lookup for any active selectionif ($(`.active`)) {// Remove added red-circle-lg.png from element($(`.active`)).removeAttr("src")  // Add defaultImage before removing active class$(`.active`).addClass("defaultImage") // Remove active class$(`.active`).removeClass("active")                 }// Remove defaultImage class$(`div.${classes}>img`).removeClass("defaultImage") // Add red-circle-lg.png Image$(`div.${classes}>img`).attr('src', 'https://cdn-0.emojis.wiki/emoji-pics/lg/red-circle-lg.png')// Add active class              $(`div.${classes}>img`).addClass('active')} 
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript