在 JQUERY 中使用事件时,我无法像使用 JavaScript Pure 那样进行更改。改变()方法

Posted

技术标签:

【中文标题】在 JQUERY 中使用事件时,我无法像使用 JavaScript Pure 那样进行更改。改变()方法【英文标题】:When using an event in JQUERY, I can't get it to make changes like I was able to with JavaScript Pure. change () method 【发布时间】:2021-10-31 05:27:09 【问题描述】:

我是一名学生,非常业余的 javascript,此时我正在向 Jquery 介绍自己,我必须在这个库下传递一些函数,我找不到以前很容易做到的方法纯 JavaScript。 我在 javascript 中创建的函数允许如果移动类型范围的输入,则同时更改输入数字,并且数字也发生了变化。

Javascript 代码

sliderV.onchange = function ()
    inputV.value = sliderV.value;

jquery 试试

$("#inputRange").change(function()
    $("#inputRange").val() = $("#aSolicitar").val();
);

【问题讨论】:

问题标题要描述问题,否则有类似问题的用户找不到。 并非您对 jquery 所做的一切都应仅限于使用 jquery 方法。在这种情况下,您可以访问this,它有一个value 属性,您可以直接访问而不需要$() 和.val()。 this.value = $("#aSolicitar").val(); 【参考方案1】:

我给你一个通用的答案,因为我不能准确地得到你的范围输入和数字输入选择器。

$(document).on('change', 'input[type=range]', function(e)
   e.preventDefault();
   $('input[type=number]').val( $(this).val() );
);

您可以根据需要更改选择器。 例如。 input[type=range]#inputRange

$(document).on('change', 'input[type=range]', function(e)
                e.preventDefault();
                $('input[type=number]').val( $(this).val() );
            );
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<p>JQuery Range input change event</p>
<input type="range" id="inputRange" value="50" />
<br/>
<input type="number" id="inputNumber" value="50" />

【讨论】:

嗨!您解决了我的问题并澄清了我的疑问,关于在需要进行值比较时如何面对这些情况 为什么要委托事件?【参考方案2】:

您不能将函数调用分配给某些东西。试试这个吧。

$("#inputRange").change(function()
    var aSolicitar = $("#aSolicitar").val();
    $(this).val(aSolicitar);
);

【讨论】:

以上是关于在 JQUERY 中使用事件时,我无法像使用 JavaScript Pure 那样进行更改。改变()方法的主要内容,如果未能解决你的问题,请参考以下文章

Jquery Selector 使用 not

无法在被动事件侦听器 jQuery Mobile 中阻止默认值

“Keypress”事件无法正常工作,使用 jQuery 和 Select2

除了像 onclick 这样的委托处理程序事件之外,Jquery 直接事件不会触发?

Jquery .ClickOut 事件

选择时jQuery自动完成触发器返回