AngleSharp вставить данные в input

198
19 апреля 2018, 08:30

Использую библиотеку AngleSharp, успешно нашел нужные мне input через селектор тэг/имя класса. Дальше вопрос, каким образом подставить данные в input?

foreach (IElement element in document.Body.QuerySelectorAll("input.bginput"))
{
}

<table class="tborder" cellpadding="5" cellspacing="1" border="0" width="800px" align="center"> 
  <tr> 
    <td class="tcat">����</td> 
  </tr> 
  <tr> 
    <td class="panelsurround"> 
      <div class="panel"> 
        <div align="left"> 
 
          <script type="text/javascript" src="/cyberstatic.net/clientscript/vbulletin_md5.js?v=389"></script> 
          <form action="login.php?do=login" method="post" onsubmit="md5hash(vb_login_password, vb_login_md5password, vb_login_md5password_utf, )"> 
            <input type="hidden" name="do" value="login" /> 
            <input type="hidden" name="url" value="/log-in.php" /> 
            <input type="hidden" name="vb_login_md5password" /> 
            <input type="hidden" name="vb_login_md5password_utf" /> 
 
 
            <input type="hidden" name="s" value="e721bb0d17d8a4690e134a57e8d7b35f" /> 
            <input type="hidden" name="securitytoken" value="guest" /> 
 
            <table cellpadding="0" cellspacing="3" border="0" align="center"> 
              <tr> 
                <td>E-mail:<br /><input type="text" class="bginput" name="vb_login_username" size="50" accesskey="u" tabindex="1" /></td> 
              </tr> 
              <tr> 
                <td>������:<br /><input type="password" class="bginput" name="vb_login_password" size="50" tabindex="1" /></td> 
              </tr> 
              <tr> 
                <td> 
                  <span class="smallfont" style="float:right"><a href="login.php?do=lostpw">������������ ������</a></span> 
                  <span class="smallfont" style="float:right; margin-right: 10px"><a href="register.php">�����������</a></span> 
                  <label for="cb_cookieuser" class="smallfont"><input type="checkbox" name="cookieuser" value="1" id="cb_cookieuser" tabindex="1" checked="checked" />���������?</label> 
                </td> 
              </tr> 
              <tr> 
                <td align="right"> 
                  <input type="submit" class="button" value="����" accesskey="s" tabindex="1" /> 
                  <input type="reset" class="button" value="�����" accesskey="r" tabindex="1" /> 
                </td> 
              </tr> 
            </table> 
 
 
          </form> 
 
        </div> 
      </div> 
    </td> 
  </tr> 
</table>

Answer 1

Через .SetAttribute:

foreach (IElement element in document.Body.QuerySelectorAll("input.bginput"))
{
    element.SetAttribute("value", "100");
}

Вот для образца набросал в linqpad'е:

var parser = new HtmlParser();
var document = parser.Parse(@"<body><form><input name='asdf' value='12'></form></body>");
var element = document.QuerySelectorAll("input[name=asdf]").FirstOrDefault();
element.SetAttribute("value", "100");
//var newValue = element.GetAttribute("value");
//newVallue.Dump();
READ ALSO
Переключить язык сайта

Переключить язык сайта

Есть вот такой кодНужно что бы задавался дэфолтный язык, и на этом языке выводилось сообщение алертом Ваш язык RU |или| ENG

174
Дерево связей, от одного элемента много исходящих [требует правки]

Дерево связей, от одного элемента много исходящих [требует правки]

Подскажите пожалуйста как можно реализовать что-то подобное

153
Проблемы с версткой под opencart

Проблемы с версткой под opencart

ЗдравствуйтеРаботаю со свежей версией opencart

193