Jquery 在asp.net mvc中向html帮助程序中动态添加行
下面是我的代码,我使用它在每个Jquery 在asp.net mvc中向html帮助程序中动态添加行,jquery,asp.net-mvc,Jquery,Asp.net Mvc,下面是我的代码,我使用它在每个td中添加带有html帮助程序的新行 我在申请表中查看材料清单,我需要有一个结构,其中在一个主要父母(主要材料)下有许多子项(成分) 我的方法是在td中使用html帮助程序,然后单击“添加行”按钮并添加子项(成分) 当我单击下面代码中的按钮时,我无法获得新行。请帮助并建议是否有其他合适的方法来完成我的物料清单查看 我正在参考 $(“#我的按钮”)。单击(函数(){ 调试器; //动态创建元素 var newRow=“@Html.TextBoxFor(x=>x.Id,
td
中添加带有html帮助程序的新行
我在申请表中查看材料清单,我需要有一个结构,其中在一个主要父母(主要材料)下有许多子项(成分)
我的方法是在td中使用html帮助程序,然后单击“添加行”按钮并添加子项(成分)
当我单击下面代码中的按钮时,我无法获得新行。请帮助并建议是否有其他合适的方法来完成我的物料清单查看
我正在参考
$(“#我的按钮”)。单击(函数(){
调试器;
//动态创建元素
var newRow=“@Html.TextBoxFor(x=>x.Id,new{@Value=“1”})”@Html.TextBoxFor(x=>x.Name,new{@Value=“Abcd”})”;
警报(纽罗);
//在最后一行之后添加新的动态行
$('#aliasTable tr:last')。在(newRow)之后;
});
指数
@TextBoxFor(Model=>Model.Id,新的{@Value=“1”})
@Html.TextBoxFor(Model=>Model.Name,新的{@Value=“Abcd”})
添加新行
请按以下方式更改代码
注意:重要的是您需要在单引号('@Html.TextBoxFor(Model=>Model.Id')之间提到razer代码(Html helpers)
如果您必须使用强类型,请使用以下代码
[HttpGet]
public ActionResult ActionMethodName()
{
Test testData = new Test();
testData.Id = 1 // if Id is integet else testData.Id = "1"
testData.Name = "Abcd"
return View("ViewName", testData);
}
您只需要添加操作方法中的值。然后该值自动返回到页面
然后,您可以在java脚本中使用以下代码来返回值
var newRow = "<tr><td>" + '@Html.TextBoxFor(x => x.Id)' + "</td><td>" + '@Html.TextBoxFor(x => x.Name)' + "</td></tr>";
var newRow=“”+”@Html.TextBoxFor(x=>x.Id)“+”+”@Html.TextBoxFor(x=>x.Name)“+”;
否则,如果您不需要强类型,请使用下面的代码
var newRow = '<tr><td><input type="text" value ="1" name ="Id" /><input type="text" value ="1" name ="Name" /></td></tr>';
var newRow='';
复制粘贴您的代码时,我遇到语法错误。语法错误,仍然没有添加新行。现在错误消失,但仍然无法获取新行。请通过警报检查获取新行变量的值,并确保((newRow)之后的$('#aliasTable tr:last');这是添加新行的正确代码。您可以在我提供的链接中看到我的编辑。很抱歉延迟,我检查并运行代码,从中我们无法从html helper分配值。如果您现在尝试更新的代码,它将起作用,我已经检查过了
var newRow = '<tr><td><input type="text" value ="1" name ="Id" /><input type="text" value ="1" name ="Name" /></td></tr>';