我将HTML代码从基本html切换为使用html助手和Html.TextBoxFor ...
这是我的旧代码
<input type="text" disabled="disabled" value="Phone" name="Phone" id="cust-cellphone" class="tonedDown" />
这是新版本
@Html.TextBoxFor(x => x.Customer.Phone_Personal, new { @class = "text-adr-fld tonedDown", @value = "Phone", @disabled = "disabled" })
一切正常,但Value属性消失了。我的意思是它没有显示为文本框中的默认预定义值。 我读过你可以使用占位符,但它似乎不适用于IE9(这是我客户的要求)。
所以问题是,如何将输入Value属性添加到适用于IE9的TextboxFor方法?
编辑: 可能有某种可能的解决方法。 我最初的目的是显示一个“像值一样的占位符”,即一个默认值,显示用户应该在文本框中键入的内容。例如。处理电话号码的文本框应显示“电话”,直到用户点击并输入值。
有没有人知道另一种方法(“占位符”和“价值”除外)?
答案 0 :(得分:0)
你可以为你的模型设置默认值,然后你的代码就行了,否则你可以尝试使用
@Html.TextBox("Phone_Personal", "Phone", new { @class = "text-adr-fld tonedDown", @disabled = "disabled" }).
如果你想使用TextBoxFor,那么使用
$(document).ready(function(){
$("#Phone_Personal").val("Phone"); // replace Phone_Personal with the ID of the textbox
});
答案 1 :(得分:0)
我认为你没有将模型传递给View方法:
return View(model);
或者,模型为空。