在创建节点是输入内容和样式的问题

1.为什么在创建文本框后,有innerHTML写内容不显示
2.怎么对某个字符串中的某个字符设置样式,在js里面,我注释的部分对k设置红色为什吗只是显示代码..图片说明

input不支持对某部分文字使用样式,应该用div,可运行的完整代码如下:






    <input type="button"  onclick="onSubmit()" value="确 定">
 </form>

 <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
 <script>
    function onSubmit(){
       var k=Number($("#t1").val())+Number($("#t2").val())+Number($("#t3").val())+Number($("#t4").val());
       var k1=String(k).fontcolor("yellow");
       var f=document.createElement("div");
       f.id="dg";
       f.style.width="200px";
       f.style.textAlign="center";
       document.getElementById("form1").appendChild(f);

       var sdf="总计"+k1+"道"+"做对了"+2+"道"+"得分"+2+"分";
       document.getElementById("dg").innerHTML=sdf;

       return false;
    }
 </script>


你创建的dg是一个input的文本框,设置样式应该是设置整个文本框的样式,不能对其中某一个支付进行设置。我的方式是将input的文本框 编程div,然后设置字符的样式就可以了。
比如:
var f=document.createElement('div');
f.id="dg";
$('form1').f1.appendChild(f);
var sdf="总计"+k+"道,做对了"+h+"道,得分"+h+"分";
$('#dg').html(sdf);
另外,你的截图中的最后一行对dg的访问时错误的。
希望可以帮助你。

图片说明

非闭合标签(起始标记,结束标记)可以使用innerHTML来赋值。如:div、span。
闭合标签( 起始和结束都在一个标记内,不能再嵌入其他元素)要使用value来赋值:如input。

非闭合标签(起始标记,结束标记)可以使用innerHTML来赋值。如:div、span。
闭合标签( 起始和结束都在一个标记内,不能再嵌入其他元素)要使用value来赋值:如input。

输入控件设置value属性,非输入的才是innerHTML或者innerText属性,乱用属性没有效果

  1. input只能用value来设置值
  2. input里的值不能单独为某个字符设置颜色 可以用DIV来实现 将要单独设置颜色的字符用SPAN包起来 再设置颜色

为啥不用jquery