以编程方式提交带有复选框的表单

时间:2014-06-24 17:47:58

标签: c# webrequest

我已经用这个搜索了我的屁股。

表格包括:

<input name="Terms" data-required="true" type="checkbox" class="validated">

我绝望地尝试像这样处理它:

WebRequest req = WebRequest.Create(link);
        string postData = "data-required=false";

        byte[] send = Encoding.Default.GetBytes(postData);
        req.Method = "POST";
        req.ContentType = "application/x-www-form-urlencoded";
        req.ContentLength = send.Length;

        Stream sout = req.GetRequestStream();
        sout.Write(send, 0, send.Length);
        sout.Flush();
        sout.Close();

        WebResponse res = req.GetResponse();
        StreamReader sr = new StreamReader(res.GetResponseStream());
        string returnvalue = sr.ReadToEnd();
        Console.WriteLine(returnvalue);

请注意,它可以设置&#34;数据需要&#34;为false并手动在浏览器中提交。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

data-required是HTML5标记,它根据需要标记字段,它与向服务器发送值无关。如果要发送POST请求,指示已选中复选框,则必须在请求正文中发送:

Terms=on

Terms是字段的名称,on是表示已选中复选框的值