我有一个JavaScript函数,它在表格中添加一行,并在文本框中显示所选值。但是我如何将所选值放在剃刀代码中?
var val = document.getElementById("tags").value;
var strHtml2 = '@Html.TextBoxFor(x => x.extraDoc.dr_name, new {Value="Place Val Here", @class = "input1", @readonly = true })';
答案 0 :(得分:2)
试试这个:
var val = document.getElementById("tags").value;
var strHtml2 = '@Model.extraDoc.dr_name' ;
更新
现在我明白了你要归档的内容。
不,你不能在razor代码中混合使用js变量。你可以将一个剃刀值赋给一个js变量,但不能将一个js变量赋予一个剃刀变量(afaik)
答案 1 :(得分:2)
不可能,因为.NET MVC是服务器端代码,在被发送到客户端之前被评估,而javascript是客户端代码,只有在客户端上运行时才会运行。
实际上你可以通过 Id 来做一件事你可以获得元素。
@Html.TextBoxFor(x => x.extraDoc.dr_name, new {Value="Place Val Here", @class = "input1", @readonly = true })
Razor会为TextBoxFor生成id字段,因为id可能是这样的:extraDoc_dr_name
(或)你可以在浏览器开发工具中找到它。
然后你可以使用javascript设置它:
document.getElementById("extraDoc_dr_name").value = document.getElementById("tags").value;