html5显示数组list,当值在数组中时选定的MVC 5 Razor html.Drodown listfor集

本文介绍了一个自定义HTML Select组件类,用于解决在HTML选择列表中选择选项时遇到的问题。通过提供灵活的构造函数和生成Select标签的方法,可以方便地创建和使用Select组件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我编写这个类是为了克服在html选择列表中选择选项时遇到的问题。希望能帮上忙。using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Web;namespace Login_page.Models{

public class HTMLSelect

{

public string id { get; set; }

public IEnumerable @class { get; set; }

public string name { get; set; }

public Boolean required { get; set; }

public string size { get; set; }

public IEnumerable SelectOptions { get; set; }

public HTMLSelect(IEnumerable options)

{

}

public HTMLSelect(string id, string name)

{

this.id = id;

this.name = name;

}

public HTMLSelect(string id, string name, bool required, IEnumerable options)

{

this.id = id;

this.name = name;

this.required = required;

}

private string BuildOpeningTag()

{

StringBuilder text = new StringBuilder();

text.Append("

text.Append(this.id != null ? " id=" + '"' + this.id + '"' : "");

text.Append(this.name != null ? " name=" + '"' + this.name + '"' : "");

text.Append(">");

return text.ToString();

}

public string GenerateSelect(IEnumerable options)

{

StringBuilder selectElement = new StringBuilder();

selectElement.Append(this.BuildOpeningTag());

foreach (SelectOption option in options)

{

StringBuilder text = new StringBuilder();

text.Append("\t");

text.Append("

text.Append(option.Selected != false ? " selected=" + '"' + "selected" + '"' + ">" : ">");

text.Append(option.Text);

text.Append("

");

selectElement.Append(text.ToString());

}

selectElement.Append("

return selectElement.ToString();

}

}

public class SelectOption

{

public string Text { get; set; }

public Boolean Selected { get; set; }

public string Value { get; set; }

}}

和public IEnumerable getOrderTypes(){

List orderTypes = new List();

if (this.orderType == "OptionText")

{

orderTypes.Add(new SelectOption() { Value = "1", Text = "OptionText", Selected = true });

} else

{

orderTypes.Add(new SelectOption() { Value = "2", Text = "OptionText2" });

}}

并利用它:@{

Login_page.Models.HTMLSelect selectElement = new Login_page.Models.HTMLSelect("order-types", "order-types");

}@Html.Raw(selectElement.GenerateSelect(Model.getOrderTypes()));

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值