2009-10-24 57 views
0

我有一个设置看起来像这样:复选框值文本框使用jQuery和Greasemonkey的

<div id="problem"> 
    <table id="incident"> 
     <tr> 
      <td><input type="checkbox" value="value1"></td><td>value1</td> 
      <td><input type="checkbox" value="value2"></td><td>value2</td> 
     </tr> 
    </table> 
</div> 
... 
<input type="text" value="" id="textfield_a01" maxlength="254"/> 

什么我尝试做的,使用JQuery & Greasemonkey的,就是把每个值从已签入每个复选框文本字段。如果复选框取消选中,请删除该值。

现在,我一直在这样的事情。

$(document).ready(function(){ 

    function updateTextfield() { 
     var vals = []; 

     $('#incident :checked').each(function() { 
      vals.push($(this).val()); 
     }); 

     $('#textfield_a01').val(vals) 
    } 

    $(function() { 
     $('#incident input').click(updateTextfield); 
     updateTextfield(); 
    }); 
}); 

但是,是的,它不工作,即时通讯想这可能是因为一个事实,即复选框是一个表里面了,但是我不能肯定。任何提示/建议在哪里看很好,在此先感谢。

回答

0

你为什么不只是收集所有的信息,并把它放入输入字段在上提交结束了吗?这样,你就不必添加和删除这一切......

否则,你可能会考虑创建一个数组来存储每个检查的值(在取出时被删除数组项)的,每一次的任何输入被改变,清除并写入一个toString版本的数组到输入中?