input获取焦点显示内容,失去焦点隐藏内容。点击内容获取点击值显示内容

71 篇文章 5 订阅

鼠标移入电话号码。获取焦点,显示下面的电话号码的列表。

失去焦点。隐藏下面的电话号码列表。

移入点击一个电话号码。得到电话号码列表隐藏。

此时会出现一个问题:

当我点击电话号码列表的时候,input也是失去焦点。他没有获取点击的内容就执行了失去焦点的隐藏操作。

 

我这里就写了在失去焦点的时候写了一个延时setTimeout。如果是点击电话列表的,就先去执行那个函数事件了

//鼠标获取焦点和移入显示
        show(){
            clearTimeout(this.timer);
            this.optionsPhoneShow=true;
        },
//鼠标移出隐藏
        hide(){
            let that=this;
             this.timer = setTimeout(function(){//500ms以后在隐藏。因为这样点击了电话列表还是执行的下面的getPhone函数。然后才走的这里。
             that.optionsPhoneShow=false;
          },500);
        },

//点击电话列表获取内容。隐藏列表

 getPhone(item){
            this.loginform.username=item;
            this.optionsPhoneShow=false;
        },

<el-input v-model="loginform.username" clearable type="tel" placeholder="手机号码" maxlength="13" @focus="show()"  @blur="hide()"  @keyup.native="addBlank($event)"  ></el-input>
         <ul class="optionsPhone" v-if="optionsPhone.length>0&&optionsPhoneShow" @touchmove="show()" >
             <li @click="getPhone(item)" v-for="item in optionsPhone.slice(0,10)" >{{item}}</li>
         </ul>

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
### 回答1: 可以使用JavaScript的document对象的getElementById方法获取input元素的内容。例如: HTML代码: <input type="text" id="myInput"> JavaScript代码: var inputContent = document.getElementById("myInput").value; 其中,getElementById方法会返回一个表示指定id的元素的对象,然后使用value属性获取该元素的,即为input中的内容。 ### 回答2: 在JavaScript中,获取Input中的内容并不复杂。通常我们可以通过以下方式达成目的: 一、使用getElementById方法获取Input 该方法通常适用于我们已知Input元素的ID的情况下。具体实现方式如下: 1.1 HTML代码 ``` <input type="text" id="input1" value="JavaScript获取Input"> ``` 1.2 JavaScript代码 ```javascript var inputVal = document.getElementById('input1').value; // 输出Input console.log(inputVal); ``` 二、使用getElementByTagName方法获取Input 2.1 HTML代码 ```html <input type="text" id="input2" value="JavaScript获取Input"> ``` 2.2 JavaScript代码 ```javascript var inputVal = document.getElementsByTagName('input')[0].value; // 输出Input console.log(inputVal); ``` 需要注意的是,getElementsByTagName返回的是一个NodeList对象,因此需要通过索引获取对应元素。 三、使用querySelector方法获取Input 3.1 HTML代码 ```html <input type="text" id="input3" value="JavaScript获取Input"> ``` 3.2 JavaScript代码 ```javascript var inputVal = document.querySelector('#input3').value; // 输出Input console.log(inputVal); ``` 与getElementById类似,querySelector方法返回匹配的第一个元素。 以上是几种获取Input元素的的方法,除此之外,还有其他的一些方法可以获取Input,如使用jQuery的val()方法等。 每一种方法各有优缺点,具体使用方式需要根据实际情况而定。 ### 回答3: 在JavaScript中获取input中的内容需要使用DOM(Document Object Model)操作。DOM是一种树形结构,表示文档的结构和内容。通过DOM可以获取和操作HTML文档中的元素和属性,包括input元素。 首先,需要获取包含input元素的父元素,可以使用document.getElementById或者document.querySelector方法获取。例如: ``` // 获取id为input-container的元素 var inputContainer = document.getElementById("input-container"); // 或者通过CSS选择器获取 var inputContainer = document.querySelector("#input-container"); ``` 接下来,可以获取input元素本身。在input元素中,通过value属性可以获取或设置input中的内容。例如: ``` // 获取id为input的元素 var inputElement = inputContainer.querySelector("#input"); // 获取input中的内容 var inputContent = inputElement.value; ``` 此时,变量`inputContent`就存储了input中的内容,可以进行后续的操作。 如果要获取多个input元素中的内容,可以使用document.querySelectorAll方法获取所有满足条件的元素,并遍历获取每个input元素的内容。例如: ``` // 获取所有class为input的元素 var inputElements = inputContainer.querySelectorAll(".input"); // 遍历所有input元素,获取内容 for (var i = 0; i < inputElements.length; i++) { var inputContent = inputElements[i].value; console.log(inputContent); } ``` 以上就是使用JavaScript获取input内容的方法。需要注意的是,获取input元素的方法和属性可能因为HTML结构和属性名而有所不同,需要根据实际情况进行调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夏天想

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值