【发布时间】:2014-12-27 03:09:12
【问题描述】:
我有一个名为“分行代码”的文本框,它将分行与公司卡交易联系起来。有时需要在多个分支之间拆分事务。我有一个在 MVC 中动态构建的表,其中包含需要填写的表单。在分支代码表单元格中,我添加了一个 href,它将触发 splitTransaction javascript 函数,该函数打开一个允许构建值的新窗口。需要将这个新值写回到父窗口中打开子窗口的超链接旁边的文本框中。我的问题是,如何将文本框的名称发送到子窗口?我不知道如何得到它。
这是我的看法:
@model List<intranetMVC.Models.sp_CorpCardEmpGetTrans_Result>
@{
ViewBag.Title = "Index";
}
<h2>Corporate Card Transactions</h2>
@using (@Html.BeginForm("Index", "CorpCardTransactions", FormMethod.Post))
{
<table cellpadding="8">
<tr>
<th class="col-md-2">Transaction Details</th>
<th class="col-md-2">Payee</th>
<th>Amount</th>
<th class="col-md-2">Description</th>
<th class="col-md-1">GL/Account</th>
<th class="col-md-1">Branch Code</th>
<th class="col-md-1">Receipt</th>
</tr>
@for (int i = 0; i < Model.Count; i++)
{
<tr>
<td valign="top">
@Html.HiddenFor(m => m[i].ID)
@*@Html.DisplayFor(m => m[i].AccountID)
@Html.HiddenFor(m => m[i].AccountID)<br />
<em>@Html.DisplayFor(m => m[i].CardHolderName)</em>
@Html.HiddenFor(m => m[i].CardHolderName)<br />*@
Posted: @Html.DisplayFor(m => m[i].PostDate)
@Html.HiddenFor(m => m[i].PostDate)<br />
TranDate: @Html.DisplayFor(m => m[i].TranDate)
@Html.HiddenFor(m => m[i].TranDate)
</td>
<td valign="top">
@Html.DisplayFor(m => m[i].Payee)
@Html.HiddenFor(m => m[i].Payee)
</td>
<td valign="top">
@Html.DisplayFor(m => m[i].Amount)
@Html.HiddenFor(m => m[i].Amount)
</td>
<td valign="top">@Html.EditorFor(m => m[i].Description)</td>
<td valign="top">@Html.EditorFor(m => m[i].GL_Account)</td>
<td valign="top">
@Html.EditorFor(m => m[i].BranchCode)<br />
<a href="#" onclick="splitTransaction();">Split Transaction</a>
</td>
<td valign="top">@Html.EditorFor(m => m[i].Receipt)</td>
</tr>
}
</table>
<br />
<input type="submit" name="saveBtn" id="saveBtn" value="Save Progress" style="font-size:1.2em;font-weight:bold;width:200px;" /> <input type="submit" name="finishBtn" id="finishBtn" value="Finish and Close Statement" style="font-size:1.2em;font-weight:bold;width:250px;" /> @Html.ActionLink("Cancel", "Index", "Statements")
<p style="margin-top:1em;"><span style="color:green; font-size:14px;">@ViewBag.Message</span> <span style ="color:#b94a48; font-size:14px;font-weight:bold;">@ViewBag.Error</span></p>
<script type="text/javascript">
var popup;
function splitTransaction() {
popup = window.open("splittrans.htm", "Popup", "width=400,height=200");
popup.focus();
}
</script>
}
以下是其中一个分支代码表单元格的页面源代码:
<td valign="top">
<input class="k-textbox" data-val="true" data-val-number="The field BranchCode must be a number." id="_0__BranchCode" name="[0].BranchCode" value="11" /><br />
<a href="#" onclick="splitTransaction();">Split Transaction</a>
</td>
当我点击“拆分交易”的链接时,如何将旁边的文本框的值发送到打开子窗口的函数?或者在将新值发送回父窗口时如何引用此文本框?页面上可能有很多。看起来好像它们是这样命名的:_0__BranchCode 等。
【问题讨论】:
标签: javascript c# jquery asp.net asp.net-mvc-5