点击选择然后,新窗口中为相应的input赋值就是这个效果。
<input type="button" id="btn_addtr" class="btn" value="增行" style="float:left;" />最多可增100行<br />
        <table id="softlist" style=" background:#f0f0f0;width:100%" >
        <tr>
        <td><input type="text" size="2" value="1"  id="tb_number"  class="tb_box" /><input name="tb_softid" id="tb_softid" type="hidden" /></td>
        <td>软件名称:<asp:TextBox ID="tb_softName" runat="server" ReadOnly="true" CssClass="tb_box" Width="200"></asp:TextBox></td>
        <td><input type="button" value="选择" class="btn" onclick="window.open('SelectSoft.aspx','','height=800,width=700,scrollbars=yes,status =yes')" /></td>
        <td>站点数:<asp:TextBox ID="tb_Sites" runat="server"   ReadOnly="true" CssClass="tb_box" Width="50"></asp:TextBox></td>
        <td>市场价:<asp:TextBox ID="tb_MarketPrice" runat="server" ReadOnly="true" CssClass="tb_box" Width="50"></asp:TextBox></td>
        <td>伙伴折扣:<asp:TextBox ID="tb_Fold" runat="server" ReadOnly="true" CssClass="tb_box" Width="50"></asp:TextBox></td>
         <td><input type="button"  onclick="deltr()" class="btn" value="删除" /></td>
         </tr> 
    </table>
 var count = $("#tb_number").val();    //递增的开始值,这里是你的ID  
                $(function () {
                    var show_count = 100;   //要显示的条数  
                    var fin_count = parseInt(count) + (show_count - 1);   //结束递增的条件  
                    $("#btn_addtr").click(function () {
                        if (count < fin_count)    //点击时候,如果当前的数字小于递增结束的条件  
                        {
                            $("#softlist tr:eq(0)").clone().appendTo("#softlist");   //在表格后面添加一行   
                            $("#softlist tr:last td input:first").val(++count);   //改变添加的行的ID值。                  
                        }
                    });
                });
                function deltr() {
                    var length = $("#softlist tr").length;
                    if (length <= 1) {
                        alert("至少保留一行");
                    } else {
                        $("#softlist tr:last").remove();
                        count--;
                    }
                }  新窗口打开是这样子的
 
 点击“确定”就为上级窗口的的相应文本框赋值。
现在的代码是这样子的
function SetParentValue() { 
        window.opener.$('#tb_softName').val($("#tb_SoftName").attr("value"));
        window.opener.$('#tb_softid').val($("#tb_SoftID").attr("value"));
        window.opener.$('#tb_Sites').val($("#tb_Sites").attr("value"));
        window.opener.$('#tb_Fold').val($("#tb_Fold").attr("value"));
        window.opener.$('#tb_MarketPrice').val($("#tb_Price").attr("value")); 
        window.close(); 
    }
但是这样子,每次都是为第一行的文本框赋值,我想为对应行的文本框赋值,请问该怎么做

解决方案 »

  1.   

    使用“#id”选择器每次只能选中定义的第一个符合条件的元素,若想选中多个,可使用$('[id=XXX]')。
    LZ可将点击选择按钮的所在行的行号rowIndex传到弹出窗,然后使用如下方式赋值:
    window.opener.$('[id="tb_softName"]').eq(rowIndex).val($("#tb_SoftName").attr("value"));
      

  2.   

    楼上的方法可行
    我还有一个问题<input name="tb_CJ_Price" type="text"  id="tb_CJ_Price" readonly="readonly" class="tb_box" style="width:50px;" value="80" />
    <input name="tb_CJ_Price" type="text"  id="tb_CJ_Price" readonly="readonly" class="tb_box" style="width:50px;" value="40" />
    <input name="tb_CJ_Price" type="text"  id="tb_CJ_Price" readonly="readonly" class="tb_box" style="width:50px;" value="1340" />
    <input name="tb_CJ_Price" type="text"  id="tb_CJ_Price" readonly="readonly" class="tb_box" style="width:50px;" value="180" />
    <input name="tb_CJ_Price" type="text"  id="tb_CJ_Price" readonly="readonly" class="tb_box" style="width:50px;" value="180" />这种该如何求和呢
      

  3.   

    var count = 0;
    $("input[name='tb_CJ_Price']").each( function() {
    count += parseInt($(this).val());
    });