在 div JS

问题描述

标题所示,我想通过输入文本查看我在写什么。

这是我的代码

function setlogo(txtlogo){
    //edit logo by textarea
    var mylogo = $("#title-logo");
    mylogo.text(txtlogo);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="text" id="txtlogo" onkeyup="setlogo(this)" value="logo Text">
<h2 id="title-logo"></h2>

当我写字时,我可以看到 [object HTMLInputElement] 里面的 h2 但如果我什么都不写,我就什么也看不到。有什么想法吗?

解决方法

您不必将对象 txtLogo 设置为文本,而是将其设置为 value

function setLogo(txtLogo){
    //edit logo by textarea
    var myLogo = $("#title-logo");
    myLogo.text(txtLogo.value);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="text" id="txtLogo" onkeyup="setLogo(this)" value="Logo Text">
<h2 id="title-logo"></h2>

,

就您而言,您正在传递一个元素。但是你需要传递这个元素的文本值。您可以通过两种方式解决此问题。

value 参数添加到 txtLogo。应该是这样的:

myLogo.text(txtLogo.value);

或者您可以在事件 onkeyup 中为 this 编写相同的参数,在 <input> 标签内。像这样:

onkeyup="setLogo(this.value)"

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...