是这样了,我页面上面有个按钮,点击一次增加一行(这个我能做到),但是现在要求,在增加的行里面有一列的数据是从表里面查出来的,我大胆的在js里面用了c:foreach标签也不行(当时就预知不行,只不过试试而已),各位还有什么好的方法,有代码的最好贴一下,或者详细思路,多谢了,比较着急

解决方案 »

  1.   

    LZ可以这样,通过后台获取数据表中的数据,之后再返回给前台,前台JS接收增加表格行。
      

  2.   

    用Ajax吧, 比较适合。 如果后台数据量不大,可以先全部读出放在页面中,然后用js直接读取
      

  3.   

    数据已经取出来了,在action里面了(struts1)关键js怎么取获取action的数据呢?数据量不是很大,就两列,id,name。想不通,我日
      

  4.   

    用easyui可以实现,自动增加下拉框(并且下拉框的值是从数据库取得)
      

  5.   


    var intRowIndex = 0;
    function insertRow(tbIndex){
     
     var objRow = myTable.insertRow(tbIndex);
     var objCel = objRow.insertCell(0);
     
     objCel.innerHTML = "<select id='ziduandm"+tbIndex+"' class='easyui-combobox' name='ziduandm"+tbIndex+"' style='width:130px;'></select>";
     var objCel = objRow.insertCell(1);
     objCel.innerHTML = "<select id='ys"+tbIndex+"' name='ys"+tbIndex+"'><option value='+'>+</option><option value='-'>-</option><option value='*'>*</option><option value='/'>/</option><option value='='>=</option></select>";

     var inde = "#ziduandm"+tbIndex;
     
     $(inde).combobox({
    url:'fzdy/list.jsp?code=2&name='+table,
    valueField:'dm',
    textField:'mc'
    });

            //这里是给下拉框赋值



    }


     
    function deleteRow(tbIndex){
    if(tbIndex<0){
    alert("没有可删除行!");
    }else{
      myTable.deleteRow(tbIndex);
      }
    }
      

  6.   

    我现在没有用这些插件,也作了一点,但是貌似值不对,打印的一下,是1,应该是4啊
     
      js代码
     var data = new Array();
     data = document.getElementsByName("data"); 页面隐藏域代码
     <input type="hidden" name="data"  value="<%=request.getAttribute("jkColumnList") %>"> list里面是4个值,这个ByName方法不就是取数组的值的么?为什么只打印出来1?
      

  7.   

    js也可以获取你取的参数啊。只不是是在url地址栏里面
    var request= 
            { 
            QueryString : function(val) 
            { 
                          var url = window.location.search;
                    var reg = new RegExp("(^|&)"+ val +"=([^&]*)(&|$)");  
                  var r = url.substr(url.indexOf("\?")+1).match(reg);  
                  if (r!=null) return unescape(r[2]); return null;  
            } 
            } 
    var sdf=request.QueryString("id");
    var sdf2=request.QueryString("pwd");
    alert("id:"+sdf+" pwd:"+sdf2);
      

  8.   

    你这个所谓来自数据库的下拉框中的若干选项值,应该是只需取一次即可的,不是那种需要即时查取的变化值。这样的话,只需在JSP里调用相应取值方法取到数据后输出到页面里一个JS变量中,这个变量就是构造好的"<select>....</select>"字串,然后每次JS增加行时就对该行该列的innerHTML赋值为那个变量就行了。