【问题标题】:Outputting value from input field in javascript从javascript中的输入字段输出值
【发布时间】:2018-04-17 01:38:56
【问题描述】:

我有一个输入字段,我在其中发送输入值:

var firstNumber = element(by.model('first'));    
firstNumber.sendKeys(1);

我想在控制台上写入输入框('1')的值。当我使用以下内容时:

console.log("Value from input box is: " + firstNumber.getAttribute('value'));

我得到以下答案:

Value from input box is: [object Object]

我怎样才能得到实际值。

附言这可能看起来非常愚蠢的问题,但我对 javascript 完全陌生,我在量角器中使用 Jasmine 框架进行端到端测试。

【问题讨论】:

  • console.log(JSON.Stringify(firstNumber.getAttribute('value')))
  • 假设firstNumber 是一个文本框,那么firstNumber.value 应该可以工作
  • @ADyson 使用 firstNumber.value 给出“输入框中的值是:未定义”
  • @KalleshwarKalshetty 使用您的方法会出现以下错误:消息:失败:JSON.Stringify 不是函数
  • @KalleshwarKalshetty 应该是 JSON.stringify(小写 s)

标签: javascript protractor


【解决方案1】:

firstNumber.getAttribute('value') 不返回实际的属性值,而是返回一个承诺,它具有[object Object] 字符串表示(documentation reference)。

你需要解析promise才能访问实际值:

firstNumber.getAttribute('value').then(function (value) {
    console.log("Value from input box is: " + value);
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-06-14
    • 2018-11-18
    • 1970-01-01
    • 1970-01-01
    • 2013-04-12
    • 2020-07-05
    • 1970-01-01
    • 2013-09-26
    相关资源
    最近更新 更多