电子邮件中的复选框

时间:2013-07-03 16:39:09

标签: c# html checkbox mailmessage

我正在使用c#MailMessage创建一封电子邮件,我正在尝试添加一个不需要点击的复选框。复选框将用于检查事件的清单(如装箱单)。我有:

MailMessage objEmail = new MailMessage();
objEmail.From = new MailAddress("sender@hotmail.com");
objEmail.To.Add(new MailAddress("example1@hotmail.com"));
objEmail.CC.Add(new MailAddress("example2@hotmail.com"));
objEmail.Bcc.Add(new MailAddress("example3@hotmail.com"));

objEmail.Subject = "Packing list!";
objEmail.IsBodyHtml = true;

objEmail.Body = @"<div width=""800px"">
    <h3>WHAT TO BRING</h3>
    <form>
        <input type=""checkbox"" name=""item"" value=""shirt"">Shirt<br>
        <input type=""checkbox"" name=""item"" value=""shoes"">Shoes 
    </form></div>";

但是当我发送电子邮件时,复选框没有出现在列表中
使用outlook.com输出展望:

带来什么

我有一辆自行车 我有一辆车

使用Microsoft Outlook输出Outlook:

带来什么

[]我有一辆自行车 []我有一辆车

使用hotmail.com输出outlook:

带来什么

我有一辆自行车 []我有车吗

所以问题在于邮件客户端,但问题是不一致的。我有什么办法可以做出一致的输出吗?  有没有办法用html创建复选框或我只需要包含复选框的图像? 提前谢谢。

3 个答案:

答案 0 :(得分:1)

我的猜测是,它们与电子邮件客户端处理复选框的方式不一致。

为什么不将每个更改为纯文本的[X],以便所有电子邮件客户端都能看到它。

答案 1 :(得分:0)

Outlook.com在单个父级中显示多个检查或单选按钮存在问题。 / / /等 在那里添加一个表,并在一个单独的行中添加2个复选框,它应该可以正常工作。

奇怪的微软思维

答案 2 :(得分:-1)

所有电子邮件客户端都有自己的规则。您可能会发现大多数提供程序不允许使用JavaScript,只有一些提供程序允许使用定位元素,而有些则不允许。

您最好的选择是使用纯文本格式,也可以使用表单形状的图像。当我说图像时,并不是说将整个图像作为图像,每个复选框都有图像。点击此表单中的任意位置后,它会在您的网站上打开以与其进行互动。

此外,你真的不应该像你一样在你的代码中构建html。将它放在MVC视图或webforms部分中,并从代码中调用该文件。使用这种方法,您仍然可以将动态数据注入模板,同时将HTML放在它所属的位置。

相关问题