Implemented asp-format support in input[type=hidden] tag helper.
This commit is contained in:
parent
f7ee16170c
commit
4bda1cbe6d
|
|
@ -189,20 +189,14 @@ namespace Microsoft.AspNetCore.Mvc.TagHelpers
|
|||
TagBuilder tagBuilder;
|
||||
switch (inputType)
|
||||
{
|
||||
case "hidden":
|
||||
tagBuilder = GenerateHidden(modelExplorer);
|
||||
break;
|
||||
|
||||
case "checkbox":
|
||||
GenerateCheckBox(modelExplorer, output);
|
||||
return;
|
||||
|
||||
case "hidden":
|
||||
tagBuilder = Generator.GenerateHidden(
|
||||
ViewContext,
|
||||
modelExplorer,
|
||||
For.Name,
|
||||
value: For.Model,
|
||||
useViewData: false,
|
||||
htmlAttributes: null);
|
||||
break;
|
||||
|
||||
case "password":
|
||||
tagBuilder = Generator.GeneratePassword(
|
||||
ViewContext,
|
||||
|
|
@ -364,6 +358,29 @@ namespace Microsoft.AspNetCore.Mvc.TagHelpers
|
|||
htmlAttributes: htmlAttributes);
|
||||
}
|
||||
|
||||
private TagBuilder GenerateHidden(ModelExplorer modelExplorer)
|
||||
{
|
||||
var value = For.Model;
|
||||
var byteArrayValue = value as byte[];
|
||||
if (byteArrayValue != null)
|
||||
{
|
||||
value = Convert.ToBase64String(byteArrayValue);
|
||||
}
|
||||
|
||||
var htmlAttributes = new Dictionary<string, object>
|
||||
{
|
||||
{ "type", "hidden" }
|
||||
};
|
||||
|
||||
return Generator.GenerateTextBox(
|
||||
ViewContext,
|
||||
modelExplorer,
|
||||
For.Name,
|
||||
value: value,
|
||||
format: Format,
|
||||
htmlAttributes: htmlAttributes);
|
||||
}
|
||||
|
||||
// Get a fall-back format based on the metadata.
|
||||
private string GetFormat(ModelExplorer modelExplorer, string inputTypeHint, string inputType)
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in New Issue