2013-11-22 68 views
0

我有一些代碼,我從jquery,我修改了一點,所有複選框值 將填充文本輸入元素。使用jquery獲取複選框值到陣列

這個完美的作品上的jsfiddle ..見鏈接到演示 http://jsfiddle.net/aAqt2/

但是當我嘗試在我的網站出來,這是行不通的..任何想法,爲什麼?見下文

<html><head> 
<script src="/js/jquery.min.js"></script> 
<script type="text/javascript"> 
$('input').on('change', function() { 
    var values = $('input:checked').map(function() { 
    return this.value; 
    }).get(); 
    $('#output').val(values.toString()); 
}); 
</script> 
</head> 
<body> 
<from name="test"> 
<table> 
<tr> 
     <td><input type=checkbox value="1"></td> 
</tr> 
<tr> 
     <td><input type=checkbox value="2"></td> 
</tr> 
<tr> 
     <td><input type=checkbox value="3"></td> 
</tr> 
<tr> 
    <td><input type=checkbox value="4"></td> 
</tr> 
<tr> 
    <td><input type=checkbox value="5"></td> 
</tr> 
<tr> 
    <td><input type="text" id="output"></td> 
</tr> 
</table> 
</form> 
</body> 
</html> 

回答

3

你需要用你的代碼在調用document ready或將其放置在網頁的結束標記之前結束我的代碼。 JSfiddle自動爲你做這件事。

例:

$(document).ready(function() { 
    $('input').on('change', function() { 
     var values = $('input:checked').map(function() { 
      return this.value; 
     }).get(); 
     $('#output').val(values.toString()); 
    }); 
}); 
2

包裝你的代碼在DOM就緒功能:

$(document).ready(function() { 
    //code here 
}); 
0

你需要把你的代碼待機功能裏面。

$(document).ready(function() { 
$('input').on('change', function() { 
    var values = $('input:checked').map(function() { 
    return this.value; 
    }).get(); 
    $('#output').val(values.toString()); 
}); 
});