Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/413.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在输入框中键入内容或单击内容时出现问题[React]_Javascript_Reactjs - Fatal编程技术网

Javascript 在输入框中键入内容或单击内容时出现问题[React]

Javascript 在输入框中键入内容或单击内容时出现问题[React],javascript,reactjs,Javascript,Reactjs,我有点困惑,为什么我的输入框被冻结了,点击在我的标签上不起作用。我环顾四周寻找答案,看到一个答案说我需要设置值和回调。做了那件事,还是没有成功。这是我的密码 import React, { Component } from 'react' class ItemsNew extends Component{ constructor(props){ super(props) this.state = { name: 'a',

我有点困惑,为什么我的输入框被冻结了,点击在我的标签上不起作用。我环顾四周寻找答案,看到一个答案说我需要设置值和回调。做了那件事,还是没有成功。这是我的密码

import React, { Component } from 'react'

class ItemsNew extends Component{
    constructor(props){
        super(props)
        this.state = {
            name: 'a',
            price: '',
            location: '',
            used: '',
            descriptipn: '',
            imgUrl: '',
            shippingCost: ''
        }
        console.log(this.state)
    }

    handleOnChange = (event) => {
        debugger
        this.setState({
            name: event.target.value 
        })
    }

    handleOnClick = (event) => {
        debugger
    }

    render(){
        return  (
            <div>
                <label onClick={this.handleOnClick}>name</label>
                <input id='name' type='text' onChange={this.handleOnChange} value={this.state.name}/><br/>
            </div>
            )
    }
}

export default ItemsNew;
import React,{Component}来自“React”
类ItemsNew扩展组件{
建造师(道具){
超级(道具)
此.state={
名称:‘a’,
价格:'',
位置:“”,
已使用:“”,
说明:'',
图:'',
装运成本:“”
}
console.log(this.state)
}
handleOnChange=(事件)=>{
调试器
这是我的国家({
名称:event.target.value
})
}
handleOnClick=(事件)=>{
调试器
}
render(){
返回(
名称

) } } 导出默认项新建;
我的console.log点击并打印出这个.state。但是,我的事件处理程序中没有一个被调试器命中。在第一次加载页面时,输入框会打印出“a”

查看React开发工具,这是我的DOM。 ![DOM图像]:
还有工具说道具是只读的。

在从头开始构建我的应用程序后,我发现问题出在CSS中。我觉得很奇怪。渲染出的div嵌套在z-index样式为-1的主div中,因此我的标题内容位于其顶部。我改变了标题的z索引,给了标题一个相对的位置,现在一切都正常了

以前的css代码:

.main{
    width: 600px;
    height: 650px;
    position: relative;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    border: 7px;
    border-style: solid;
    border-color: grey;
    box-shadow: 10px 13px 15px 0 rgba(0,0,0,0.3);
    transform: translateY(-12%);
    overflow-y: auto;
    **z-index: -1;**
    background: lightblue;
}

.app-title{
    text-align: center;
    color: teal;
    margin-top: 38px;
}
新CSS代码:

.main{
  width: 600px;
  height: 650px;
  position: relative;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  border: 7px;
  border-style: solid;
  border-color: grey;
  box-shadow: 10px 13px 15px 0 rgba(0,0,0,0.3);
  transform: translateY(-12%);
  overflow-y: auto;
  background: lightblue;
}

.app-title{
  text-align: center;
  color: teal;
  margin-top: 38px;
  **position: relative;**
  **z-index: 1;**
}

你的代码对我来说似乎很好,也许问题不在你的代码中,而是在其他地方。是的,我构建了一个简单的react应用程序,没有其他依赖项,没有路由器,输入没有冻结。但就我的另一个应用程序而言,我有各种各样的功能。我想现在得深入挖掘了。很高兴你问这个问题!帮助我修复代码。还通过增加输入标记的父元素的zIndex来修复它。(必须是父标记。在实际输入标记上增加zIndex不起作用)。