如何使用casperjs用keydown / keyup / keypress填充输入字段?

时间:2013-10-08 16:58:11

标签: phantomjs casperjs

有一个带有keydown / keyup / keypress / blur事件的输入字段绑定, 并希望为此输入字段填充一些值  与casperjs

<input type="text" class="some-input" id="somekey" 
onblur="somefunc_1();" 
onkeydown="if(event.keyCode==13)  somefunc_2();"
onkeyup="somefunc_3();" onkeypress="return somefunc_4();">

这是我尝试使用casperjs,但它没有用:

var somevalue = '3';
casper.then(function(){
        this.mouseEvent( 'click', '#somekey');
        this.page.sendEvent('keypress', somevalue);
        });

casper.wait(1000, function(){
        console.log("input value :" + 
        this.getElementAttribute('#somekey', 'value')); 
        });

1 个答案:

答案 0 :(得分:1)

getElementAttribute不会获得该值。在玩了一些代码之后,我想出了这个似乎有效的方法。

    casper.then(function(){
    this.sendKeys('#somekey', 'just testing this');
    test.comment(this.evaluate(function(){
        return __utils__.getFieldValue('nameOfSomeKeyField');
    }));        
});