我有一个文本框,其中包含" text-transform:capitalize;"它工作正常,但当我试图获得它的价值时,它没有被改变。例如,我写了" test"它显示"测试"在文本框中,但当我做" console.log(" document.getElementById(" search")。value")"它显示" test"。
我该如何解决这个问题?
这是我的代码:
HTML:
<input type="text" id="search"/>
<button type="submit" onclick="query()">Submit</button>
<div class="query-div"><p class="query-p">Test-a</p></div>
<div class="query-div"><p class="query-p">Test-b</p></div>
<div class="query-div"><p class="query-p">Test-ba</p></div>
使用Javascript:
function query() {
var x = document.querySelectorAll(".query-p");
var y = document.getElementById("search");
var i;
for(i = 0; i < x.length; i++) {
if(x[i].innerHTML.includes(y.value)) {x[i].style.display = 'block';} else {x[i].style.display = 'none';}
console.log(x[i].innerHTML);
}
}
答案 0 :(得分:1)
您可以在第一个字符上使用string.toUpperCase()。
function query() {
var x = document.querySelectorAll(".query-p");
var y = document.getElementById("search");
var i;
for(i = 0; i < x.length; i++) {
if(x[i].innerHTML.includes(y.value)) {
x[i].style.display = 'block';
} else {
x[i].style.display = 'none';
}
var text = x[i].innerHTML
console.log(text[0].toUpperCase() + text.slice(1));
}
}
&#13;
<input type="text" id="search"/>
<button type="submit" onclick="query()">Submit</button>
<div class="query-div"><p class="query-p">Test-a</p></div>
<div class="query-div"><p class="query-p">Test-b</p></div>
<div class="query-div"><p class="query-p">Test-ba</p></div>
&#13;