当前位置:首页 > JavaScript

JS实现inpubox

2026-04-07 05:35:18JavaScript

实现 InputBox 的基本结构

使用 HTML 创建一个简单的输入框结构,包含一个输入框和一个按钮。

<div class="input-box">
  <input type="text" id="inputField" placeholder="Enter text here">
  <button id="submitBtn">Submit</button>
</div>

添加样式

通过 CSS 美化输入框和按钮,使其更具交互性。

.input-box {
  display: flex;
  gap: 10px;
  margin: 20px;
}

#inputField {
  padding: 8px;
  border: 1px solid #ccc;
  border-radius: 4px;
  width: 200px;
}

#submitBtn {
  padding: 8px 16px;
  background-color: #007bff;
  color: white;
  border: none;
  border-radius: 4px;
  cursor: pointer;
}

#submitBtn:hover {
  background-color: #0056b3;
}

实现交互功能

使用 JavaScript 添加事件监听器,处理用户输入和按钮点击。

document.getElementById('submitBtn').addEventListener('click', function() {
  const inputValue = document.getElementById('inputField').value;
  if (inputValue.trim() !== '') {
    alert('You entered: ' + inputValue);
  } else {
    alert('Please enter some text');
  }
});

添加键盘事件

为输入框添加键盘事件,允许用户通过按 Enter 键提交内容。

document.getElementById('inputField').addEventListener('keypress', function(event) {
  if (event.key === 'Enter') {
    document.getElementById('submitBtn').click();
  }
});

动态创建 InputBox

通过 JavaScript 动态创建 InputBox 元素,适用于需要动态添加输入框的场景。

function createInputBox() {
  const container = document.createElement('div');
  container.className = 'input-box';

  const input = document.createElement('input');
  input.type = 'text';
  input.placeholder = 'Enter text here';
  input.id = 'dynamicInput';

  const button = document.createElement('button');
  button.textContent = 'Submit';
  button.id = 'dynamicBtn';

  container.appendChild(input);
  container.appendChild(button);

  document.body.appendChild(container);

  button.addEventListener('click', function() {
    const value = input.value;
    if (value.trim() !== '') {
      console.log('Submitted:', value);
    }
  });
}

createInputBox();

验证输入内容

添加输入验证逻辑,确保用户输入符合特定要求。

document.getElementById('submitBtn').addEventListener('click', function() {
  const inputValue = document.getElementById('inputField').value;
  if (inputValue.length < 5) {
    alert('Input must be at least 5 characters long');
  } else {
    console.log('Valid input:', inputValue);
  }
});

使用事件委托

对于动态生成的多个输入框,使用事件委托优化事件处理。

JS实现inpubox

document.body.addEventListener('click', function(event) {
  if (event.target.classList.contains('dynamic-btn')) {
    const input = event.target.previousElementSibling;
    console.log('Submitted:', input.value);
  }
});

标签: JSinpubox
分享给朋友:

相关文章

JS能实现跨平台吗

JS能实现跨平台吗

JavaScript 的跨平台能力 JavaScript 是一种高度灵活的脚本语言,通过不同运行时环境和工具链可以实现跨平台开发。以下是其跨平台能力的核心实现方式: 浏览器环境 JavaScript…

JS实现勋章

JS实现勋章

实现动态勋章效果 使用CSS和JavaScript创建动态旋转勋章。HTML部分定义勋章容器,CSS设置样式和动画,JavaScript控制交互行为。 <div class="badge-co…

JS实现小手状

JS实现小手状

使用CSS cursor属性实现小手状 在网页中实现鼠标悬停时显示小手形状,最简单的方法是使用CSS的cursor属性。该属性可以直接设置为pointer,浏览器会自动渲染为手型图标。 .click…

JS实现隐藏tr

JS实现隐藏tr

隐藏表格行(tr)的方法 在JavaScript中隐藏表格行(tr)可以通过多种方式实现,以下是几种常见方法: 方法1:修改style.display属性 // 通过ID获取行并隐藏…

JS拖拽的实现

JS拖拽的实现

基本拖拽实现 使用原生JavaScript实现拖拽功能需要监听三个事件:mousedown、mousemove和mouseup。在mousedown事件中记录初始位置,在mousemove事件中计算偏…

JS实现上传

JS实现上传

上传文件的基本实现 使用HTML的<input type="file">元素配合JavaScript的File API可以实现文件上传功能。以下是一个基础示例: <input ty…