Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/80.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 编辑表中的值<;td>&书信电报;输入></td>;_Javascript_Html_Jquery_Node.js_Websocket - Fatal编程技术网

Javascript 编辑表中的值<;td>&书信电报;输入></td>;

Javascript 编辑表中的值<;td>&书信电报;输入></td>;,javascript,html,jquery,node.js,websocket,Javascript,Html,Jquery,Node.js,Websocket,数据来自socket.io,它动态地显示在一个表中,我希望编辑该表的值并通过TCP发送回 我希望在单击表输入时,输入标记是可编辑的,然后通过套接字发送回TCP const net=require('net'); const client=new net.Socket(); client.connect(4000,'127.0.0.1',函数(){ log('连接到服务器…'); }); client.setEncoding('utf8'); client.on('data',函数(data){

数据来自socket.io,它动态地显示在一个表中,我希望编辑该表的值并通过TCP发送回 我希望在单击表输入时,输入标记是可编辑的,然后通过套接字发送回TCP

const net=require('net');
const client=new net.Socket();
client.connect(4000,'127.0.0.1',函数(){
log('连接到服务器…');
});
client.setEncoding('utf8');
client.on('data',函数(data){
var strTable=“”;
对于(var i=0;i

1.
2.
3.
4.
5.
6.
7.
8.

我认为一切都很好,但也许您忘记了动态html的语法

请替换以下代码

strTable += "<input type=\"number\" class=\"form-control\" value=\""+logReceived(data)[i][j]+"\">"
strTable+=“”

如果有任何问题,请检查并告知我。

您正在添加带有静态文本的表行和单元格,那么您无法控制它们

这是我尝试成功的示例代码

<!DOCTYPE html>
<html>
<head>
    <script src="/media/js/jquery.min.js"></script>
    <link rel="stylesheet" href="/media/css/bootstrap.min.css">
    <script src="/media/js/bootstrap.min.js"></script>
    <meta charset="utf-8" />
</head>
<body>
<input style="width: 100%" id="myresult"/>
<table class="table table-bordered table-striped">
    <thead class="thead-dark">
    <tr>
        <th scope="col">1</th>
        <th scope="col">2</th>
        <th scope="col">3</th>
        <th scope="col">4</th>
        <th scope="col">5</th>
        <th scope="col">6</th>
        <th scope="col">7</th>
        <th scope="col">8</th>
    </tr>
    </thead>
    <tbody id="model_table"></tbody>
</table>
</body>
<script language="javascript">
    $(document).ready(function(e) {
            
            for (var i = 0; i < 10; i++) {
                var strrow = $("<tr></tr>");
                for (var j = 0; j < 8; j++) {
                    // console.log("in loop",logReceived(data)[i])
                    var strcol = $("<td></td>");

                    var myinput = $("<input type='number'></input>");
                    myinput.data("data-i", i);
                    myinput.data("data-j", j);
                    myinput.addClass('form-control').val(i + j);
                    myinput[0].onchange = function(ew){
                        var i1 = $(this).data('data-i');
                        var j1 = $(this).data('data-j');
                        var val = $(this).val();
                        $("#myresult").val(i1 + " , " + j1 + " , " + val);
                    };
                    strcol.append(myinput);
                    strrow.append(strcol);
                }
                $('#model_table').append(strrow);
            }
            
        });
    
    
</script>
</html>


            

1.
2.
3.
4.
5.
6.
7.
8.
$(文档).ready(函数(e){
对于(变量i=0;i<10;i++){
var strow=$(“”);
对于(var j=0;j<8;j++){
//console.log(“在循环中”,logReceived(数据)[i])
var strcol=$(“”);
var myinput=$(“”);
myinput.data(“data-i”,i);
myinput.data(“数据-j”,j);
myinput.addClass('form-control').val(i+j);
myinput[0]。onchange=函数(ew){
var i1=$(this.data('data-i');
var j1=$(this.data('data-j');
var val=$(this.val();
$(“#myresult”).val(i1+”、“+j1+”、“+val);
};
strcol.append(myinput);
strrow.append(strcol);
}
$('#model_table')。追加(strow);
}
});

数据显示在表格上,但仍不可编辑。我想包括编辑该数据并将其发送到socketinput的功能。由于某些原因,无法单击Put标记。我尝试了您的代码,表格中的所有输入都是可编辑的。请搜索其他原因,如浏览器问题或控制台错误。请查找输入无法单击的原因。它在我的自定义CSS中。当我注释掉它的工作时,我现在想要的是当我点击任何一个INTUT时,它的值在同一个索引中改变,并通过套接字发送它