在javascript中,如何更改类型为“数字”的属性的值

In javascript, how do you change the value of a property whose type is "number"?

本文关键字:数字 属性 类型 javascript 何更改      更新时间:2023-12-09
typeof document.getElementById('foo').bar('value') //returns "number"

我想更改"值"。

console.log(document.getElementById('foo').bar('value')) // 10

我不能只为一个数字取值,它会理所当然地抛出一个错误:

document.getElementById('foo').bar('value')) = 12 // ReferenceError: Invalid left-hand side in assignment
10 = 12 // ReferenceError: Invalid left-hand side in assignment

您将如何设置柱线的值?

这个特定的实例是针对jquery提供的滑块的,所以实际的代码(我试图改变它的值(如下所示:

$('#slider').slider.val(function (index, value) {
  return value + '' + deltaY + '%'})

但是,我返回了一个长错误,粘贴在此处:https://gist.github.com/2e65bbf1578f7ea27bb0

"...}没有方法'瓦尔'">

如果要设置输入元素的 value 属性,它始终是一个字符串(并且在设置时将转换为字符串(。

bar()方法的调用返回一个值(不是"指针"(,当然不能分配给它。你需要做什么,函数返回不同的结果显然在很大程度上取决于该函数。


您得到的错误来自表达式 $('#slider').slider.val... - $.fn.slider ,您在此处访问的函数没有属性"val">(因此您无法调用(。你想在那里做什么?阅读您仔细使用的滑块插件的文档。

不管这是什么:

$('#slider').slider

没有方法调用val()

因此,调用$('#slider').slider.val(...)显然是行不通的。

还没有测试过,但也许slider应该是一个返回对象的函数?

$('#slider').slider().val(...)

我认为这个问题的标题和第一部分是红鲱鱼。

我相信您正在尝试使用 JQuery UI 滑块方法?如果是这样,请按照Bergi的建议进行操作并阅读文档。如果我正确理解您的需求,那么您应该注意此处的以下内容: http://jqueryui.com/demos/slider/

在"值"部分的"选项"选项卡下:

代码示例
使用指定的值选项初始化滑块。

$( ".selector" ).slider({ value: 37 });      

在初始化后获取或设置值选项。

//getter
var value = $( ".selector" ).slider( "option", "value" );
//setter
$( ".selector" ).slider( "option", "value", 37 );