jQuery MiniUI

标题: 想在td里面添加一个ID,当你点击+添加表数据时,根据ID [打印本页]

作者: ly1203    时间: 2017-10-19 15:47:32     标题: 想在td里面添加一个ID,当你点击+添加表数据时,根据ID

想在td里面添加一个ID,当你点击+添加表数据时,根据ID的定位,找到你想要添加数据的地方,将数据插入。
还有一个问题是在td里面添加一个name,当你点击添加的话,想让参数类型从0.1.2.3.4.5.6.7一致保持这个类型。我不自动啊如何去做。
function addMethodType(type){
                        //alert(data[i].id);
                        var j = 0;
                        if(type == null){
                                type = "";
                        }
                        var html = '<tr><td style = "text-align: right;padding-right:10%;width:40%" >参数类型'+j+':</td>';
                    html += '<td style = "text-left;width:60%"><input name = "paramDataType'+j+'" id = "paramDataType'+j+'" class = "mini-textbox" value = "'+type+'" />';
            html += '<a class = "mini-button " style = "margin-left: 50px;" plain = "true" iconCls = "icon-add"></a></td></tr>';
            $("#maintainForm1").html(html);
            mini.parse();
            $("#addParamsType").append($("#maintainForm1").children(":first"));
            j++;
                }


作者: felt    时间: 2017-10-19 16:44:44

把var j=0放到方法外去,当全局变量,你这样是局部变量,每次都是0不会增加的。
作者: ly1203    时间: 2017-10-19 16:48:15

felt 发表于 2017-10-19 16:44
把var j=0放到方法外去,当全局变量,你这样是局部变量,每次都是0不会增加的。 ...

不是这个显示页面的原因,我的意思是 比如我这有2个参数类型里面的数据  1 和2  我现在想点击1后面的加号 在2的前面添加一个参数类型字段(字段自动变为2)。 2变成3。 这2个目的
作者: felt    时间: 2017-10-19 19:37:43

ly1203 发表于 2017-10-19 16:48
不是这个显示页面的原因,我的意思是 比如我这有2个参数类型里面的数据  1 和2  我现在想点击1后面的加号 ...

还是看不懂,你提供一些代码来说明吧。
作者: ly1203    时间: 2017-10-20 08:38:58

felt 发表于 2017-10-19 19:37
还是看不懂,你提供一些代码来说明吧。

[attach]10034[/attach]
当我点击1 的加号时,想让数据插入到2的位置,并且三处的参数类型原本是1.2的现在插入后2变成3

作者: ly1203    时间: 2017-10-20 08:44:48

felt 发表于 2017-10-19 19:37
还是看不懂,你提供一些代码来说明吧。

希望能尽快回复。代码如开始描述一样。 <div id="maintainForm" style="display:none;padding:5px;">
    <form id="form1">
        <table style="width:100%;" id="addParamsType">
         </table>
         <table style="width:100%;" id="tables">
             <tr>
                <td style="text-align:right;padding-top:5px;padding-right:20px;font-size: 10pt;" colspan="6">
                    <a class="Update_Button" href="javascript:saveMethodType();">保存</a>
                </td>               
            </tr>
        </table>
        </form>
    </div>
     <div id="maintainForm1" style="display:none;padding:5px;">
    </div>
        <script type="text/javascript">
                mini.parse();
                var grid = mini.get("methodid");
                var maintainForm = document.getElementById("maintainForm");
        grid.load();
        function SetData(data) {
                    if (data.action == "method") {
                            //跨页面传递的数据对象,克隆后才可以安全使用
                            data = mini.clone(data);
                            $("#serviceid12").val(data.id);
                            var url="${pageContext.request.contextPath}/serviceManager/queryMethod?serviceid="+data.id;
                            mini.get("methodid").setUrl(url);
                            grid.reload();
                    }
            }
        function loadNew(){
                grid.reload();
        }
        <%-- 记录参数类型的的个数及确定参数类型的id --%>
        var methodTypecount_i =data.length;
                <%-- 展开详情 --%>
        function onShowRowDetail(e) {
                var row = e.record;
            //将editForm元素,加入行详细单元格内
            var td = grid.getRowDetailCellEl(row);
            td.appendChild(maintainForm);
            $("#addParamsType").html("");
            maintainForm.style.display = "";
            //表单加载员工信息
             //   grid.loading();
                $.ajax({
                    url: "${pageContext.request.contextPath}/serviceManager/queryMethodParams?servicetradeId="+row.id,
                    success: function (text) {
                        var o = mini.decode(text); // text里面有data data里面有你想要查的所有的数据
                        //alert(JSON.stringify(o));
                        var array=new Array;
                        var data=o['result']['pageresult'].data;
                      //  alert(JSON.stringify(data));
                        for(var i=0;i<data.length;i++){
                                array=data.paramDataType;
                      //          alert(array);
                        }
                        //  for循环,必须循环完,才能给array数组里面所有的数赋值。
                        for(var i=0;i<data.length;i++){
                        methodTypecount_i =data[0].id;         // 不合理 如果你的首ID为10
                               if(array== null){
                                addMethodType();
                        }else{
                                                         for (var i = 0 ; i < data.length ; i++ ){
                                                        //         alert(array);
                                                                 addMethodType(array);
                                                                 }
                        }
                    }
                        grid.unmask();
                    }
                });
        }
        //  能不能把j拿出来,当点击方法的时候根据你所选的id+,将数据拿出来,并不仅仅的是将这里的数据进行++   这里是当你点击+号的时候 他会再次调用这个方法。现在的想法就是说当你点击+的时候,根据你所选中的+的ID去进行下面的  取ID不能解决此问题。
        <%-- 增加服务方法中参数类型 --%>
                function addMethodType(type){
                        //alert(data.id);
                        var j = 0;
                        if(type == null){
                                type = "";
                        }
                        //var id = jQuery("#idd").find("td").length +1 ;
                //        var html = "  <tr id='"+id+"'><td>"+id+"</td><td></td></tr>";
                //        jQuery("tables").append(trHTML);
                        var id = jQuery("#idd").find("td").length +1 ;
                        alert(id);
                        var html = '<tr id="idd"><td id="1" name="" style = "text-align: right;padding-right:10%;width:40%" >参数类型'+j+':</td>';
                    html += '<td style = "text-left;width:60%"><input name = "paramDataType'+j+'" id = "paramDataType'+j+'" class = "mini-textbox" value = "'+type+'" />';
            html += '<a class = "mini-button " style = "margin-left: 50px;" plain = "true" iconCls = "icon-add" onclick = "addMethodType()"></a></td></tr>';
            $("#maintainForm1").html(html);
            mini.parse();
            $("#addParamsType").append($("#maintainForm1").children(":first"));
           
         //   $("#maintainForm1").html(html);
          //  mini.parse();
       //    $("#addParamsType").append($("#maintainForm1").children(":first"));
                }

还在修改,可能比较乱
作者: dforce    时间: 2017-10-20 11:06:10

ly1203 发表于 2017-10-20 08:44
希望能尽快回复。代码如开始描述一样。
   
        

这是基础的js操作,和MiniUI无关,你压根没处理动态修改文字怎么会自动给你修改。




欢迎光临 jQuery MiniUI (http://miniui.com/discuss/) Powered by Discuz! X2