发布带有html内容的textarea失败`没有收到数据`

时间:2013-07-28 09:38:13

标签: post iis-7.5

好的伙计们, 所以这是另一个奇怪的:

我有以下表格:

<form method="post" autocomplete="off">
    <fieldset>
        <legend>Edit article</legend>

        <label>Description<textarea name="txtDescription"><%=article.Description %></textarea></label>
        <label>Content<textarea name="txtContent"><%=article.Content %></textarea></label>

    </fieldset>
    <input type="submit" class="fr" value="save changes" />
</form>

在获取文章旁边的代码后面没有任何内容。 页面加载速度非常快,不到1秒,在textarea的数据中。

当我尝试提交此表单时,页面需要永远加载(实际上,它根本不加载,但在使用No data received几分钟后失败。 textarea内容只是一些html,不大(每个文本区约2-4kb)

我尝试添加enctype="multipart/form-data",但没有成功,同样的事情发生了。 我设法将其缩小到txtContent textarea,(我删除了description textarea) 并且页面失败。

更糟糕的是,如果我在服务器上的浏览器中打开页面, 它没有任何问题,我可以发布,它都应该工作。 如果我尝试从远程计算机访问该页面,则该帖子会失败。

任何人都知道这里发生了什么?

编辑:为了确保,我创建了一个简单的HTML文档,其中包含以下内容:

<!DOCTYPE html>
<html>
<head>

</head>
<body>
    <div id="header">
        <nav>
            <ul>
                <li><a href="/admin/">Dashboard</a></li>
                <li><a href="/admin/articles/">Articles</a></li>
            </ul>
        </nav>
    </div>
    <div id="content">
    <form method="post" action="test.html">
        <fieldset>
            <legend>Edit article</legend>

            <label>Content<textarea name="txtcontent"></textarea></label>

        </fieldset>
        <input type="submit" class="fr" value="save changes" />
    </form>
    </div>
    <div id="footer"></div>

</body>
</html>

这仍然失败。

编辑:此处显示的测试代码是无效的最小代码。 实际的表单更大,如果我从表单中删除txtcontent textarea, 表单提交没有问题,包括description textarea。

编辑:内容长度:1555 /内容类型:application / x-www-form-urlencoded

编辑:我已经卸载并重新安装了iis,并重新注册了.NET 问题仍然存在。

2 个答案:

答案 0 :(得分:0)

要检查的一些事情......

您使用的是哪种语言,例如ASP.NET WebForms,ASP.NET MVC和版本?

我可以看到你正在使用

<form method="post" autocomplete="off">

在ASP.NET Web表单中,您通常会将表单标记声明为

<form runat="server">

在ASP.NET MVC中,它类似于

@using(Html.BeginForm(......))
{
}

另一个问题是您发布HTML标记,默认情况下,由于安全原因,ASP.NET不允许这样做。查看XSS并确保在禁用此功能之前了解风险。

答案 1 :(得分:0)

最后说明: 我已经卸载了IIS,重新安装的IIS,重新注册的.net框架, 它似乎现在工作正常。 原始问题的原因,未知