Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/89.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Blazor将html绑定到textarea_Html_Textarea_Bind_Blazor - Fatal编程技术网

Blazor将html绑定到textarea

Blazor将html绑定到textarea,html,textarea,bind,blazor,Html,Textarea,Bind,Blazor,这似乎很简单,但我还没有找到答案。在我的Blazor服务器端程序中,我有一个弹出式电子邮件表单,我预先填充了文本,用户可以编辑它,然后单击发送程序发送电子邮件。如果用户在文本区域中输入换行符,它们将返回为\n,这很好。但是,我无法将文本发送到带有换行符的文本区域 在弹出式窗体中,我有: <div class="form-group-sm"> <label class="control-label"&

这似乎很简单,但我还没有找到答案。在我的Blazor服务器端程序中,我有一个弹出式电子邮件表单,我预先填充了文本,用户可以编辑它,然后单击发送程序发送电子邮件。如果用户在文本区域中输入换行符,它们将返回为\n,这很好。但是,我无法将文本发送到带有换行符的文本区域

在弹出式窗体中,我有:

        <div class="form-group-sm">
            <label class="control-label">Message</label>
            <textarea rows="4" @bind="EmailMessage" class="form-control"></textarea>
        </div>

消息
如果我发送

EmailMessage = "Test Email text \\nline two <br /> line 3";
EmailMessage = Markdown.ToHtml("Test Email text \\nline two <br /> line 3");
EmailMessage=“测试电子邮件文本\\n第二行
第3行”;
我明白了

如果我发送

EmailMessage = "Test Email text \\nline two <br /> line 3";
EmailMessage = Markdown.ToHtml("Test Email text \\nline two <br /> line 3");
EmailMessage=Markdown.ToHtml(“测试电子邮件文本\\n第二行
第3行”);
我明白了

是否可以将换行符发送到绑定到属性的文本区域,然后用户可以编辑该属性并将文本发送回程序


理想情况下,这将适用于任何html标记,但目前我只接受换行符。

这是基本的……您可以通过多种方式对其进行扩展:

@page "/"

<div class="form-group-sm">
    <label class="control-label">Message</label>
    <textarea rows="4" value="@EmailMessage" @onchange="@((args) => EmailMessage = args.Value.ToString())" class="form-control"></textarea>
</div>

<button @onclick="@(()=>{})">Refresh</button>



@code {
    private string emailMessage = "Test Email text \r\nline two \r\n line 3";
    
    public string EmailMessage
    {
        get =>  emailMessage;
        set
        {
            if (emailMessage != value)
            {
                emailMessage = ((MarkupString)value).ToString();
            }
        }

    }
 
}
@page/“
消息
刷新
@代码{
私有字符串emailMessage=“测试电子邮件文本\r\n第二行\r\n第3行”;
公共字符串电子邮件
{
get=>emailMessage;
设置
{
如果(emailMessage!=值)
{
emailMessage=((MarkupString)值).ToString();
}
}
}
}

你为什么逃跑\?我在寻找一个束缚解,但表面上这不是。然而,深入研究它本质上是在做Blazor在绑定下所做的事情,最重要的是它是有效的。谢谢!