我构建了一个带有输入字段的JavaScript应用程序,我想检查输入是否是X写入Y,但它不起作用:
<input type="text" id="inputField" style="color:#cccccc;background-color:#000000" name="inputFeld" size="90" onchange="input()" autofocus>
这是HTMl,这是JavaScript:
function input() {
var inp = document.getElementById("inputField");
var out = document.getElementById("output");
if (inp.substring(1) == "x") {
out.innerHTML = ".....";
}
}
答案 0 :(得分:1)
substring(1)
删除第一个值。所以请尝试substring(0,1)
并在输入元素字段中应用value
。没有value
没有获取输入字符串。
function input() {
var inp = document.getElementById("inputField").value;//value is important
var out = document.getElementById("output");
if (inp.substring(0,1) == "x") {
console.log('strat with x')
}
}
<input type="text" id="inputField" style="color:#cccccc;background-color:#000000" name="inputFeld" size="90" onchange="input()" autofocus>
答案 1 :(得分:0)
您可以使用string[n]
在第n个位置获取角色(从零开始)。
此外,onchange
仅在您输出焦点时触发,您可能希望使用oninput
代替每次输入元素输入时触发。
<input type="text" id="inputField" style="color:#cccccc;background-color:#000000" name="inputFeld" size="90" onchange="input()" autofocus>
<p id="output"></p>
function input() {
var input = document.getElementById("inputField").value;
var output = document.getElementById("output");
if (input[0] == "x") {
output.innerText = "the input starts with x";
}
}
答案 2 :(得分:0)
如果您使用 jQuery,这里是您的解决方案
let downloadButton = document.getElementById("export");
downloadButton.addEventListener("click" , ()=>{
let table = document.getElementById("attendance");
let rows = [];
for (let i = 0,row; row = table.rows[i]; i++) {
column1 = row.cells[0].innerText;
column2 = row.cells[1].innerText;
column3 = row.cells[2].innerText;
column4 = row.cells[3].innerText;
column5 = row.cells[4].innerText;
column6 = row.cells[5].innerText;
rows.push([column1 , column2 , column3 , column4 , column5 , column6]);
}
let csvContent = "data:text/csv;charset=utf-8";
rows.forEach(element => {
row = element.join(",");
csvContent += row + "\r\n";
});
let encodedUri = encodeURI(csvContent);
let link = document.createElement("a");
link.setAttribute("href" , encodedUri);
link.setAttribute("download" , "attendance_report.csv");
link.setAttribute("id" , "anchor");
document.body.appendChild(link);
link.click();
});
如果您使用的是 javascript,这里是您的解决方案
<input type="text" id="myinput"><br>
<div class="out"></div>
<script type="text/javascript">
$(document).on('input', '#myinput', function() {
if ($("#myinput").val().substring(0, 1) == "x") {
$(".out").empty().append('begins with x');
} else {
$(".out").empty();
}
});
</script>
请注意,您可以使用 .substring(0,1) 代替 .charAt(0) 两者都受到很好的跨浏览器支持,但是由于浏览器支持,不建议使用 [0]。
使用 .substring(0,1) 你可以很容易地使用 .substring(0,2) 来获取第二个字符等等。