MVC/jquery 的新手,在动态创建链接时遇到问题。
如果用户在文本框中键入并点击添加按钮,我们将调用以下 javascript:
addItem: function (button) {
var text = this.$text.val();
var $newCell = $('<td>');
$newCell.text(text);
var $hidden = $('<input type="hidden" />');
$hidden.attr('name', this.name);
$hidden.val(text);
$newCell.append($hidden);
$newCell.append('</td>');
var $newLinkCell = $('<td>');
var $newLink = $('<a href="#" id="newLink">EPA Action Link</a>');
var $newLinkTarget = '<%: @Html.ActionLink("EPA Action Link", "EPARedirect", new { EPAId = "' + text + '" }, new { target = "_blank" }) %>';
$newLink.attr("href", $newLinkTarget);
$newLinkCell.append($newLinkTarget);
$newLinkCell.append('</td>');
var $html = $('<tr>');
$html.append($newCell);
$html.append($newLinkCell);
$html.append('</tr>');
this.$table.append($html);
this.initItem($newCell);
this.$text.val('');
}
所以我正在做的是找到一个表格,并添加一个包含两个单元格的新行:左侧显示数据,右侧显示以该数据作为参数的链接。
对于现有项目,我在 cshtml 文件中有相同的 ActionLink(除了 EPAId 是通过“@item”的 jquery 变量构建的)。
无论如何,我一直试图弄清楚如何在我的 add 函数中动态构建相同类型的链接。我得到的只是 $newLinkTarget 的文字文本。我想这是有道理的,它不是通过服务器的 jquery 渲染来推动的。
我在这里走错了路吗?