Javascript-如何在更改时重置字段
对不起。Javascript(使用jquery)noob。问题是 我有一个带有数字的选择字段:Javascript-如何在更改时重置字段,javascript,jquery,Javascript,Jquery,对不起。Javascript(使用jquery)noob。问题是 我有一个带有数字的选择字段: <div class="controls"> <select class="span2" id='select1' onchange="addstuff()"> <option value="1">1</option> <option value="2">2</option> <option va
<div class="controls">
<select class="span2" id='select1' onchange="addstuff()">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
</div>
<div id="addfields"></div>
1.
2.
3.
然后,我循环遍历指定的数字,并在具有
“select1”的id
函数addstuff()
{
var num=parseInt($('#select1').val())
如果(num!=0)
{
对于(i=0;i您永远不会初始化新字段
,您无论如何都应该这样做。如果这样做,您的问题也会得到解决
function addstuff() {
var new_field = '';
顺便说一句,由于您使用的是jQuery,因此使用事件绑定比使用事件属性更容易
$("#select1").on('change', addstuff);
您也可以放弃定义addstuff
并将其绑定为匿名函数。轻松,谢谢您添加了这么多解释和代码……这应该可以满足您的需要:
function addstuff()
{
var num = parseInt($('#select1').val());
var new_field = "";
if (num != 0)
{
for (i=0; i<num;i++)
{
new_field += "<p>" + num + "</p>";
}
$('#addfields').html(new_field);
}
}
函数addstuff()
{
var num=parseInt($('#select1').val();
var new_field=“”;
如果(num!=0)
{
对于(i=0;我非常感谢您的回复!@user2152283别忘了升级投票,并接受有帮助的回答。我想在这里升级投票,但我的声誉不够高。您的解决方案似乎非常干净wrt事件绑定。我将仔细阅读此内容,我很可能会重写我的代码。再次感谢您。
<p> + num + </p>
<p> + num + </p>
function addstuff() {
var new_field = '';
$("#select1").on('change', addstuff);
function addstuff()
{
var num = parseInt($('#select1').val());
var new_field = "";
if (num != 0)
{
for (i=0; i<num;i++)
{
new_field += "<p>" + num + "</p>";
}
$('#addfields').html(new_field);
}
}