使用jquery的不同返回值控制台/javascript

使用jquery的不同返回值控制台/javascript,javascript,jquery,Javascript,Jquery,我是javascript/jquery/html新手,我必须用html和javascript开发一个小模拟器 我有一个存储了html id的数组和一个函数,该函数应该根据传递的状态更新输入 代码如下所示: var dev_array = [["#8_1", "#8_2"], ["#8_3", "#8_4"], ["#8_5", "#8_6"], ["#8_7", "#8_8"]]; function send_dev_state_ctrl(state){ dev_array.forEac

我是javascript/jquery/html新手,我必须用html和javascript开发一个小模拟器

我有一个存储了html id的数组和一个函数,该函数应该根据传递的状态更新输入

代码如下所示:

var dev_array = [["#8_1", "#8_2"], ["#8_3", "#8_4"], ["#8_5", "#8_6"], ["#8_7", "#8_8"]];

function send_dev_state_ctrl(state){
   dev_array.forEach(function(entry){
      for (i = 0; i < entry.length; ++i) {
         console.log(entry[i]);
         var input =$(entry[i]);
         console.log(input);
         input.value =value_hash_dev[i];
         handle_ctrl_send(input);           
      }
   });
 }
如果我在控制台中输入数字$(“#8_1”),则有以下输出:

[<input type=​"hidden" id=​"8_1" name=​"8:​1" value=​"1">​]
[​]

我应该怎么做才能在javascript中获得相同的返回值呢?

您不是在$ing您的console.log上,而是在吐出数组值

更改此项:

console.log(entry[i]);
为此:

console.log($(entry[i]));
你会得到同样的结果

----编辑----

对不起,我看错了这个问题,所以你做得对

var input =$(entry[i])[0];
将起作用,这是因为
$(条目[i])
是一个对象,该对象中的第一个值是通过执行
$(条目[i])[0];
访问的DOM元素

另一种方法是:

var input =$(entry[i]).get(0);
这几乎是做同样的事情


不幸的是,没有太多其他的方法来做这件事。

你没有在你的console.log上设置$”你只是在吐出数组值

更改此项:

console.log(entry[i]);
为此:

console.log($(entry[i]));
你会得到同样的结果

----编辑----

对不起,我看错了这个问题,所以你做得对

var input =$(entry[i])[0];
将起作用,这是因为
$(条目[i])
是一个对象,该对象中的第一个值是通过执行
$(条目[i])[0];
访问的DOM元素

另一种方法是:

var input =$(entry[i]).get(0);
这几乎是做同样的事情


不幸的是,没有太多其他的方法可以做到这一点。

我不知道为什么,但要做到:

  var input =$(entry[i])[0];
它返回与console相同的值


我不喜欢它,但它很管用。

我不知道为什么,但要做:

  var input =$(entry[i])[0];
它返回与console相同的值


我不喜欢它,但它很有效。

@simone:它们可以在HTML5中使用。出于某种原因,控制台选择以不同的方式表示相同的值。你不应该对此感到担忧。@simone:它们可以在HTML5中使用。出于某种原因,控制台选择以不同的方式表示相同的值。你不应该对此感到担忧。我认为你忽略了
var Input=$(输入[i]);console.log(输入);
console.log(输入[i])
的输出可以在引用的输出的开头看到:
#8_1[input#8_1,…。
。这完全取决于perusoperonale希望这两个console.log是什么,您希望两者都是#8_1还是两者都是[input#8_1,…我认为您忽略了
var input=$(条目[I]);console.log(输入);
console.log(条目[I]);
的输出可以在引用的输出的开头看到:
\8_1[input#8_1,….
。这完全取决于perusopersonale希望2 console.logs是什么,您希望两者都是#8_1还是两者都是[input#8_1,
$(条目[i])[0]
是jQuery对象中的第一个DOM元素。正如我在评论中所说的,您不必担心控制台显示的内容。假设
$
在这两种情况下都引用jQuery,您将实际获得相同的值。
$(条目[I])[0]
是jQuery对象中的第一个DOM元素。正如我在评论中所说的,您不必担心控制台显示的内容。假设
$
在这两种情况下都引用jQuery,您将实际获得相同的值。