Javascript jQuery—DOM操作的结果可以';不能分配给变量吗?

Javascript jQuery—DOM操作的结果可以';不能分配给变量吗?,javascript,jquery,dom,Javascript,Jquery,Dom,使用jQuery,我通过一些过程更改输入文本字段的值。流程完成后,我需要捕获此更改并将其应用于另一个流程。我的问题是,我似乎无法捕获此更改并将其分配给变量。我知道更改正在发生,因为DOM正在更新。此外,这个变量分配在IE中有效,但不适用于我测试的其他浏览器 下面是一个片段来证明我的观点(你可以在这里在线看到:) $().ready(函数()){ $('input[name=my_hidden]').val('Hello hidden Field'); $('input[name=my_text

使用jQuery,我通过一些过程更改输入文本字段的值。流程完成后,我需要捕获此更改并将其应用于另一个流程。我的问题是,我似乎无法捕获此更改并将其分配给变量。我知道更改正在发生,因为DOM正在更新。此外,这个变量分配在IE中有效,但不适用于我测试的其他浏览器

下面是一个片段来证明我的观点(你可以在这里在线看到:)


$().ready(函数()){
$('input[name=my_hidden]').val('Hello hidden Field');
$('input[name=my_text]').val('Hello text Field');
//展示
var temp=$('form').html();
//虽然DOM是用新值更新的
//不捕获对输入文本字段的更改,但捕获
//隐藏字段中的更改。在IE中,temp捕获
//两个领域的变化。
警报(临时);
});

显然,我需要跨浏览器的一致行为。有什么想法吗?

或者,您可以将字段的值存储到数组中,并按如下方式使用:

var data = [];
$('form :input').each(function(){
  data.push(this.value);
});
alert(data[0]);
alert(data[1]);
现在,您可以检查以下值:

var data = [];
$('form :input').each(function(){
  data.push(this.value);
});
alert(data[0]);
alert(data[1]);

或者,您可以将字段的值存储到数组中,并按如下方式使用:

var data = [];
$('form :input').each(function(){
  data.push(this.value);
});
alert(data[0]);
alert(data[1]);
现在,您可以检查以下值:

var data = [];
$('form :input').each(function(){
  data.push(this.value);
});
alert(data[0]);
alert(data[1]);

我不知道会发生什么,但不知何故,将值设置为成员(input.value)或将值设置为属性节点应该是有区别的

这对我很有用:

$('input[name=my_text]').each(function()           
{ this.setAttribute('value','Hello Text Field');});

我想这是innerHTML中的一个bug,请参见bugzilla:

我不知道会发生什么,但不知何故,将值设置为成员(input.value)或将值设置为属性节点之间应该有区别

这对我很有用:

$('input[name=my_text]').each(function()           
{ this.setAttribute('value','Hello Text Field');});

我想这是innerHTML中的一个bug,请参见bugzilla:

我也对周围的标记感兴趣。你知道为什么这只适用于隐藏字段吗?@AMan:这适用于所有输入字段,而不仅仅是隐藏字段。如果您想使其仅适用于隐藏字段,则应使用
$('form:hidden')
。不,我的意思是我希望html结构与它的新值一起存储在javascript变量中。问题是,除了hiddenI之外,这不适用于其他字段。我对周围的标记也感兴趣。你知道为什么这只适用于隐藏字段吗?@AMan:这适用于所有输入字段,而不仅仅是隐藏字段。如果您想使其仅适用于隐藏字段,则应使用
$('form:hidden')
。不,我的意思是我希望html结构与它的新值一起存储在javascript变量中。问题是,这不适用于其他领域,除非你是个天才!看起来很管用,已经挣扎了几天了。所以我必须使用setAttribute酷!太多了!啤酒?你真是个天才!看起来很管用,已经挣扎了几天了。所以我必须使用setAttribute酷!太多了!啤酒?英雄联盟