如何使用DoodleNerd的CSS文本框提取文本?

时间:2019-08-14 02:44:05

标签: javascript html css

我最近使用了DoodleNerd的CSS文本框生成器(http://doodlenerd.com/html-control/css-textbox-generator)为我的网站制作了一个非常时尚的文本框。我熟悉从表单中提取文本;我已经完成了两种主要形式:

document.getElementById('field').value

or 

driver.findElement(By.id("field")).getCssValue("value")

由于某些原因,当我使用DoodleNerd的文本框时,不会提取框中的值...这确实很奇怪。我将包括CSS和html以供参考:

#field {
        position: absolute;
        left: 33px;
        top: 170px;
        overflow: visible;
        width: 129px;
        white-space: nowrap;
        text-align: left;
        font-family: Comic Sans MS;
        font-style: normal;
        font-weight: normal;
        font-size: 20px;
        color: rgba(249,249,249);
    }
.field {
     padding: 0px;
     font-size: 15px;
     border-width: 5px;
     border-color: #CCCCCC;
     background-color: #ba6fc5;
     color: #f9f9f9;
     border-style: inset;
     border-radius: 5px;
     box-shadow: 4px 2px 5px rgba(66,66,66,.75);
     text-shadow: 49px -11px 5px rgba(177,37,37,.0);
}
 .field:focus {
     outline:none;
}
<div id="field">
        <input type="text" value="e.g. '999'" class="field" />
    </div>

感谢一百万!

1 个答案:

答案 0 :(得分:0)

您想要的值似乎是:例如“ 999”正确吗?如果是这样,这应该是您的JavaScript:

var fieldValue = document.querySelector('.field').value;

您想要的值似乎具有字段类别,而不是字段ID。

如果必须使用document.getElementById(),也可以执行以下操作:

var field = document.getElementById('field');
var value = field.firstElementChild.value;

但是我认为第一种方法可能更好。