点击选择然后,新窗口中为相应的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();
}
但是这样子,每次都是为第一行的文本框赋值,我想为对应行的文本框赋值,请问该怎么做
<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();
}
但是这样子,每次都是为第一行的文本框赋值,我想为对应行的文本框赋值,请问该怎么做
LZ可将点击选择按钮的所在行的行号rowIndex传到弹出窗,然后使用如下方式赋值:
window.opener.$('[id="tb_softName"]').eq(rowIndex).val($("#tb_SoftName").attr("value"));
我还有一个问题<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" />这种该如何求和呢
$("input[name='tb_CJ_Price']").each( function() {
count += parseInt($(this).val());
});