我试图创建一个文本框,将我的两个文本框字段(Rack和Row)合并为一个。
这是我的代码:
@Html.TextBoxFor(m => m.Server.Rack, new { @class= "form-control" })
@Html.TextBoxFor(m => m.Server.Row, new { @class = "form-control" })
我试图将Server.Rack和Server.Row组合到同一个文本框中。这可能在我的代码中吗?
答案 0 :(得分:0)
您的表格:
<form>
<input type="text" id="input1" onblur="concat()"/>
<input type="text" id="input2" onblur="concat()"/>
</form>
<p id="concat"></p>
和javascript:
function concat(){
var x = document.getElementById('input1').innerHTML;
var y = document.getElementById('input2').innerHTML;
document.getElementById('concat').innerHTML = x.concat(y);
}
这会做什么:
当文本框松散焦点时,javascript将读取每个文本框中的信息。然后它会将两个文本框的结果(即使一个是空白的)打印到<p id="concat"></p>
中。
警告:此代码快速编写,无需检查错误或任何测试。使用前请查看代码。
附加信息:这是客户端,而不是服务器端。
答案 1 :(得分:0)
我认为最好在ViewModel中连接这两个属性,以便可以在不同的视图上使用它,并且可以轻松地评估cane。你应该做的是创建一个ViewModel并添加一个名为RackRow的新属性。然后通过连接Rack和Row属性在控制器上设置此属性,并将其返回到相关的View。
<强>控制器:强>
public ActionResult Index_Read()
{
var result = repository.Server.Select(m => new
Project.WebUI.Models.ServerViewModel
{
Rack = m.Rack,
Row = m.Row,
RackRow = m.Rack + " " + m.Row
}
);
return Json(result, JsonRequestBehavior.AllowGet);
}
希望这会有所帮助......