J'ai l'élément d'entrée comme indiqué:
<input type="text" class="bg-white" id="couponCode" value="">
Comment puis-je définir/remplir sa valeur en utilisant casperJs
Utilisation de casper.sendKeys('selector', value);
http://casperjs.readthedocs.org/fr/latest/modules/casper.html#sendkeys
Il existe différentes méthodes disponibles pour accomplir cette tâche.
Vous devez utiliser casper.sendKeys()
sauf si vous devez effectuer une opération plus complexe.
casper.sendKeys()
:Si vous souhaitez définir la valeur de l'environnement CasperJS et que l'élément input
est éventuellement à l'intérieur d'un élément form
, vous pouvez utiliser casper.sendKeys()
:
casper.sendKeys( '#couponCode', 'Hello, world!' );
casper.fill()
:Si vous souhaitez définir la valeur de l'environnement CasperJS et de l'élément input
est dans un élément form
et que inclut un attribut name
, vous pouvez utiliser casper.fill()
:
casper.fill( '#form',
{
'couponCode' : 'Hello, world!' // #form [name="couponCode"]
});
casper.fillSelectors()
:Si vous souhaitez définir la valeur à partir de l'environnement CasperJS et de l'élément input
est dans un élément form
et si vous souhaitez référencer l'élément input
à l'aide d'un sélecteur CSS3, vous pouvez utiliser casper.fillSelectors()
. :
casper.fillSelectors( '#form',
{
'#couponCode' : 'Hello, world!' // #form #couponCode
});
casper.fillLabels()
:Si vous souhaitez définir la valeur de l'environnement CasperJS et de l'élément input
est dans un élément form
et que inclut un élément label
associé avec du texte, vous pouvez utiliser casper.fillLabels()
:
casper.fillLabels( '#form',
{
'couponCode' : 'Hello, world!' // #form label[text()="couponCode"] input
});
casper.fillXPath()
:Si vous souhaitez définir la valeur à partir de l'environnement CasperJS et de l'élément input
est dans un élément form
et si vous souhaitez référencer l'élément input
à l'aide d'un sélecteur XPath, vous pouvez utiliser casper.fillXPath()
. :
casper.fillXPath( '#form',
{
'//*[@id="couponCode"]' : 'Hello, world!' // #form #couponCode
});
casper.evaluate()
:Si vous souhaitez définir la valeur à partir de l'environnement DOM Page et que l'élément input
est éventuellement à l'intérieur d'un élément form
, vous pouvez utiliser casper.evaluate()
:
casper.evaluate( function ()
{
document.getElementById( 'couponCode' ).value = 'Hello, world!';
});
Remarque: De la même manière que
evaluate()
, vous pouvez également utiliser:evaluateOrDie()
,thenEvaluate()
outhenOpenAndEvaluate()
(si vous souhaitez effectuer deux opérations ou plus en même temps en relation étapes en cours d'exécution).