AngleSharp by AngleSharp

<PackageReference Include="AngleSharp" Version="0.9.9" />

.NET API 1,224,192 bytes

 HtmlButtonElement

Represents an HTML button element.
using AngleSharp.Dom.Css; using AngleSharp.Dom.Events; using AngleSharp.Extensions; using AngleSharp.Html; namespace AngleSharp.Dom.Html { internal sealed class HtmlButtonElement : HtmlFormControlElement, IHtmlButtonElement, IHtmlElement, IElement, INode, IEventTarget, IMarkupFormattable, IParentNode, IChildNode, INonDocumentTypeChildNode, IElementCssInlineStyle, IGlobalEventHandlers, IValidation { public string Type { get { return (this.GetOwnAttribute(AttributeNames.Type) ?? InputTypeNames.Submit).ToLowerInvariant(); } set { this.SetOwnAttribute(AttributeNames.Type, value, false); } } public string FormAction { get { IHtmlFormElement form = base.Form; if (form == null) return string.Empty; return form.Action; } set { IHtmlFormElement form = base.Form; if (form != null) form.Action = value; } } public string FormEncType { get { IHtmlFormElement form = base.Form; if (form == null) return string.Empty; return form.Enctype; } set { IHtmlFormElement form = base.Form; if (form != null) form.Enctype = value; } } public string FormMethod { get { IHtmlFormElement form = base.Form; if (form == null) return string.Empty; return form.Method; } set { IHtmlFormElement form = base.Form; if (form != null) form.Method = value; } } public bool FormNoValidate { get { return base.Form?.NoValidate ?? false; } set { IHtmlFormElement form = base.Form; if (form != null) form.NoValidate = value; } } public string FormTarget { get { IHtmlFormElement form = base.Form; if (form == null) return string.Empty; return form.Target; } set { IHtmlFormElement form = base.Form; if (form != null) form.Target = value; } } public string Value { get { return this.GetOwnAttribute(AttributeNames.Value) ?? string.Empty; } set { this.SetOwnAttribute(AttributeNames.Value, value, false); } } internal bool IsVisited { get; set; } internal bool IsActive { get; set; } public HtmlButtonElement(Document owner, string prefix = null) : base(owner, TagNames.Button, prefix, NodeFlags.None) { } public override void DoClick() { IHtmlFormElement form = base.Form; if (!IsClickedCancelled() && form != null) { string type = Type; if (type.Is(InputTypeNames.Submit)) form.SubmitAsync(this); else if (type.Is(InputTypeNames.Reset)) { form.Reset(); } } } protected override bool CanBeValidated() { if (Type.Is(InputTypeNames.Submit)) return !this.HasDataListAncestor(); return false; } internal override void ConstructDataSet(FormDataSet dataSet, IHtmlElement submitter) { string type = Type; if (this == submitter && type.IsOneOf(InputTypeNames.Submit, InputTypeNames.Reset)) dataSet.Append(base.Name, Value, type); } } }