0

我的js错误,

我想将文本替换中的值设置为输入值

这个html代码:

<td><span>5</span> <b>Stock</b><br /></td>
<input type="text" name="qty" size="5" maxlength="5" class="pcs" value="0" /> <b>Stock</b>

我的js代码:

var curInnerHTML = document.body.innerHTML;
curInnerHTML = curInnerHTML.replace(/5/g,"11");
document.body.innerHTML = curInnerHTML;

var settotal    = document.querySelector("[class='pcs']");
var stock       = document.body.innerHTML;
settotal.value  = stock; // need 11

http://jsfiddle.net/james007/4X68k/

4

1 回答 1

1

做你可能想要完成的事情有点复杂。最好只选择您想要的文本而不是整个页面的内容。给包含数字的跨度一个 id:

<td><span id="stock">5</span> <b>Stock</b><br /></td>

然后专门针对跨度:

document.getElementById( 'stock' ).innerText = '11';

var settotal = document.querySelector("[class='pcs']");
settotal.value = document.getElementById( 'stock' ).innerText;

尽管根据您的操作,最好不要将文档内容用作数据存储:

var stock = 11;
document.getElementById( 'stock' ).innerText = stock;

var settotal = document.querySelector("[class='pcs']");
settotal.value = stock;
于 2013-11-08T08:37:15.883 回答