2013-02-11 147 views
0

我的JavaScript代码是无法form.all_skill解决未定义的javascript

function addTaskSkill(form) { 
    var at = form.all_skill.length -1; 

    var td = form.task_skill.length -1; 
    var tasks = "x"; 



    if(td>=0 && form.task_skill.options[0].value==skll_id){ 
     form.task_skill.options[0] = null; 
     td = form.task_skill.length -1; 
    } 


    for (td; td > -1; td--) { 
     tasks = tasks + "," + form.task_skill.options[td].value + "," 
    } 


    for (at; at > -1; at--) { 
     if (form.all_skill.options[at].selected && tasks.indexOf("," + form.all_skill.options[at].value + ",") == -1) { 
      t = form.task_skill.length 
      opt = new Option(form.all_skill.options[at].text, form.all_skill.options[at].value); 
      form.task_skill.options[t] = opt 
     } 
    } 

    //checkForTaskSkill(form.task_skill); 
} 

function removeTaskSkill(form) { 
    td = form.task_skill.length -1; 

    for (td; td > -1; td--) { 
     if (form.task_skill.options[td].selected) { 
      form.task_skill.options[td] = null; 
     } 
    } 

} 

和我的通话功能

<form action="#" method="post" name="detailFrm"> 
    <table> 
     <tr> 
      <td> 
       <select name="all_skill" size="10" class="span5" multiple="multiple" > 
        <option value="30">Apache</option> 
        <option value="31">Microsoft IIS</option> 
        <option value="32">Tomcat</option> 
        <option value="34">JBoss</option> 
        <option value="35">BEA WebLogic</option> 
       </select> 
      </td> 
      <td><input type="button" class="btn" value="&gt;" onclick="javascript:addTaskSkill(document.detailFrm)" /> 
       <br><br><input type="button" class="btn" value="&lt;" 
           onclick="javascript:removeTaskSkill(document.detailFrm)" /></td> 
      <td> 
       <select name="task_skill" class="span5" size="10" multiple="multiple"> </select> 
      </td> 
     </tr> 
    </table> 
</form> 

我在这里上点击>>选择从一个选择框&一些选项它应该推到下一个选择框。我得到的错误是

TypeError: form.all_skill is undefined 
[Break On This Error] 

var at = form.all_skill.length -1; 

我没有得到这个解决方案。请帮助这里获得解决方案。我正在尝试做一个列表框交换器。

在此先感谢。

回答

0

要引用形式的元素既可以使用的形式的元素的选择是这样的:

form.elements['all_skill'] // where form is: document.detailFrm 

或者您使用的ID:

//HTML 
<select name="all_skill" id="all_skill" size="10" class="span5" multiple="multiple" > 

// in JS 
document.getElementById('all_skill'); 
相关问题