4

zombie.js を使用してフォームを送信しようとしていますが、pressButton() が「エラー: ボタン 'xxx' がありません」というエラーで失敗します。ここで、xxx はセレクターです。アプリは次のとおりです。

var Browser = require('zombie');
b = new Browser();
b.visit('https://www.example.com/login/', function() {
        b.
          fill('name', 'My Name').
          fill('code', 'My Code').
          pressButton('submit', function() {
                console.log(b.html());
          });
});

そして、ここにフォームがあります:

<form method="post" class="login">
    <p> <label for="name"> <span id="nameprompt">Your Name:</span> </label> </p>
        <input name="name" id="name" value="" size="40" maxlength="40" />
    <p> <label for="code"> <span id="codeprompt">Bar Code</span> </label> </p>
        <input name="code" id="code" type="PASSWORD" value="" size="40" maxlength="40" />
    <div class="formButtonArea">
        <input type="image" src="/screens/pat_submit.gif" border="0" name="submit" value="submit" />
    </div>
</form>

明らかな「送信」に加えて、「.formButtonArea入力」などを含む一連のセレクターを試しましたが、成功しませんでした。

私は何を間違っていますか?

4

1 に答える 1

0

入力が type="submit" (または type="button" ) である必要があるようです。https://groups.google.com/forum/?fromgroups=#!topic/zombie-js/8L0_Cpn8vVUによると、著者がclickLinkについてコメントしている場合、 clickButtonも同じことを行う可能性があります: ボタンを見つけてから click を起動します

それが役に立てば幸い。

于 2012-08-21T14:14:21.993 に答える