我使用HTML Helpers来渲染我的字段:
<%=Html.EditorFor(m => m.User.Surname)%>
Run Code Online (Sandbox Code Playgroud)
输出将是这样的:
<input class="text-box single-line" id="User_Surname"
name="User.Surname" type="text" value="" />
Run Code Online (Sandbox Code Playgroud)
帮助程序使用className +'.' èfieldName来构建id.
我需要将id传递给jQuery函数.有没有办法在没有硬编码的情况下拥有它?也许是一个可以使用ASP.NET MVC2约定的帮手?
如何将RadioButtonFor()设置为默认选中
<%=Html.RadioButtonFor(m => m.Gender,"Male")%>
Run Code Online (Sandbox Code Playgroud)
(Html.RadioButton)有出路而不是(Html.RadioButtonFor)
有任何想法吗?
有人可以提供一个如何正确使用Html.RadioButtonFor的简单示例吗?让我们说这是一个简单的场景,我的模型有一个名为Gender的字符串属性.我想显示两个单选按钮:"男性"和"女性".
在编辑视图中保留所选值的同时实现此最简洁的方法是什么?
我想在ASP.NET MVC 2中使用强类型HTML帮助程序,使用我的模型的属性Nullable<T>.
public class TicketFilter {
public bool? IsOpen { get; set; }
public TicketType? Type{ get; set; } // TicketType is an enum
// ... etc ...
}
Run Code Online (Sandbox Code Playgroud)
<p>Ticket status:
<%: Html.RadioButtonFor(m => m.IsOpen, null) %> All
<%: Html.RadioButtonFor(m => m.IsOpen, true) %> Open
<%: Html.RadioButtonFor(m => m.IsOpen, false) %> Closed
</p>
<p>Ticket type:
<%: Html.RadioButtonFor(m => m.Type, null) %> Any
<%: Html.RadioButtonFor(m => m.Type, TicketType.Question) %> Question
<%: Html.RadioButtonFor(m => m.Type, TicketType.Complaint) %> …Run Code Online (Sandbox Code Playgroud) 我正在使用ASP.net MVC 3构建一个应用程序,我想知道是否有人知道一个很棒的库来填补内置的html表单字段助手的空白?
例如,创建文本框很简单:
@Html.EditorFor(model => model.TextboxTest)
Run Code Online (Sandbox Code Playgroud)
但是为了创建一个下拉列表,我必须写:
@Html.DropDownListFor(model => model.DropdownTest, Model.DropdownTestData)
Run Code Online (Sandbox Code Playgroud)
它应该写得像
@Html.EditorFor(model => model.DropdownTest)
Run Code Online (Sandbox Code Playgroud)
其中DropdownTest是SelectList.
有一个示例解决方案可以在这里找到.
这是一个radiobuttons列表:它不包含在MVC中(目前).还有另一个很好的解决方案可以在这里找到,我可以用这个解决方案来编写
@Html.RadioButtonListFor(model=>model.Item,Model.ItemList)
Run Code Online (Sandbox Code Playgroud)
所以有可用的解决方案,但没有结构化的库(分别我没有找到),我不想一块一块地复制和粘贴这些解决方案(因为我不能用NuGet轻松更新它),一个整体图书馆会更好,但我找不到.
请帮忙 :)
我有一个可选的查询部分需要在某种条件下执行.这是示例代码:
int cat = 1;
int UserID = 12;
string qry = "select * from articles";
if(cat > 0)
qry += " where categoryID = " + cat;
if(UserID > 0)
qry += " AND userid = " + UserID; //The AND may be a WHERE if first condition is false
Run Code Online (Sandbox Code Playgroud)
如您所见,我在查询中有一个if语句.我目前正在使用实体框架,它不支持这种情况.那里有ORM支持吗?
编辑 我试图假设查询.但我有大约20个"IF"语句,而且查询很长.
我看到的ORM是:
我对任何ORM持开放态度.谢谢
我有以下型号:
public class Person
{
public string Name { get; set; }
public string Gender { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我希望默认的性别为女性,所以我在动作中设置了:
public ActionResult Create()
{
var model = new Person { Gender = "F" }; // default is female
return View(model);
}
Run Code Online (Sandbox Code Playgroud)
最后,视图呈现如下所示:
@model Person
@using (Html.BeginForm())
{
@Html.EditorForModel()
<p><input type="submit" value="Create" /></p>
}
Run Code Online (Sandbox Code Playgroud)
这一切都按预期工作.现在,让我们说,而不是简单的文本框,我想将性别显示为一组更直观的单选按钮.所以我制作了以下模板并将其保存到Shared/EditorTemplates/Gender.cshtml:
@model string
@Html.RadioButtonFor(model => model, "F") Female
@Html.RadioButtonFor(model => model, "M") Male
Run Code Online (Sandbox Code Playgroud)
最后,我装饰了性别[UIHint("Gender")].
现在通过单选按钮正确呈现性别,这很棒,但是...
问题
女性不再预先选择作为默认值,而是最终将两个单选按钮留空.我错过了什么吗?
有趣的是,如果我RadioButtonFor从模板移动到视图(更改model => model为 …
我无法将默认单选按钮设置为"已选中"!我正在使用@ Html.RadioButtonFor:
<div id="private-user">
@Html.RadioButtonFor(m => m.UserType, "type1", new { @class="type-radio" , **@Checked="checked"** }) 1
</div>
<div id="proff-user">
@Html.RadioButtonFor(m => m.UserType, "type2", new { @class="type-radio" }) 2
</div>
Run Code Online (Sandbox Code Playgroud)
是否可以使用@ Html.RadioButtonFor设置单选按钮?
谢谢
目前,我可以@Html.DropDownList()从数据集中动态填充.下面的代码适用于此.
CONTROLLER
public static IEnumerable<SelectListItem> myList
{
get
{
ReportAPI.ReportsAPI ws = new ReportAPI.ReportsAPI();
DataSet ds = ws.GetReportDataSet(userguid, reportguid);
DataTable dt = ds.Tables[0];
List<SelectListItem> list = new List<SelectListItem>();
foreach (DataRow dr in dt.Rows)
{
list.Add(new SelectListItem
{
Text = dr["text"].ToString(),
Value = dr["value"].ToString(),
});
}
return list;
}
}
public ActionResult NewSubscriber()
{
ViewData["subscriptionplanx"] = myList;
return View();
}
Run Code Online (Sandbox Code Playgroud)
视图
@Html.DropDownList("subscriptionplanx")
Run Code Online (Sandbox Code Playgroud)
现在,我想使用单选按钮而不是使用DropDownList.我该怎么做?
我来自使用MVVM的WPF编程,所以这是我在ASP.NET中使用MVC的第一次体验
我试图做的是展示这个模型:
public class MultipleChoiceQuestion : Question
{
public string QuestionText
public List<MultipleChoiceAnswer> PossibleAnswers { get; set; }
}
public class MultipleChoiceAnswer
{
public string Text { get; set; }
public string UrlImage { get; set; }
public bool IsCorrect { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
正如你所看到的,我有一个List<T>,这里是我试图在RadioButtons中显示的地方.我在这个网站上搜索一些数据,我发现主要使用了radioButtons中的ViewModels.
有没有人为ASP.NET MVC实现RadioButtonListFor <T>?
在这里使用ViewModels的目的是什么?如何在单选按钮中显示我的列表?这只是一点点混乱.