inputをいじるならformがあったほうが歯切れがいい
ざっくりこんな感じ
javascript
1<script>
2window.addEventListener('DOMContentLoaded', function(e){
3 set_answer();
4 document.querySelector('#f1 [name=all]').addEventListener('change',function(e){
5 [].forEach.call(document.querySelectorAll('#f1 [name^=multi_chk]'),function(x){
6 x.checked=e.target.checked;
7 });
8 set_answer();
9 });
10 [].forEach.call(document.querySelectorAll('#f1 [name^=multi_chk]'),function(x){
11 x.addEventListener('change',function(){
12 set_answer();
13 });
14 });
15 function set_answer(){
16 var num=[].map.call(document.querySelectorAll('#f1 [name^=multi_chk]:checked'),function(x){
17 return parseInt(x.closest("td").nextElementSibling.textContent);
18 }).concat(0).reduce(function(x,y){
19 return x+y;
20 });
21 document.querySelector('[name=anser_price]').value=num;
22 }
23});
24</script>
25<form id="f1">
26<table>
27<tr>
28<td><input type="checkbox" name="multi_chk[1]" value="true"></td>
29<td>200</td>
30</tr>
31<tr>
32<td><input type="checkbox" name="multi_chk[2]" value="true"></td>
33<td>400</td>
34</tr>
35<tr>
36<td><input type="checkbox" name="multi_chk[3]" value="true"></td>
37<td>150</td>
38</tr>
39<tr>
40<td><input type="checkbox" name="multi_chk[4s]" value="true"></td>
41<td>300</td>
42</tr>
43</table>
44<label><input type="checkbox" name="all">all</label><br>
45<input type="text" name="anser_price">
46</form>
47
jQuery
上記ソースをjQueryで書くとこう
javascript
1$(function(){
2 $('#f1 [name=all],#f1 [name^=multi_chk]').on('change',function(){
3 if($(this).attr('name')=="all") $('#f1 [name^=multi_chk]').prop('checked',$(this).prop('checked'));
4 var num=$('#f1 [name^=multi_chk]:checked').map(function(){
5 return parseInt($(this).closest('td').next().text());
6 }).get().concat(0).reduce(function(x,y){
7 return x+y;
8 });
9 $('[name=anser_price]').val(num);
10 }).eq(0).trigger('change');
11});