js中cssText可以用变量赋值吗
<script type="text/javascript">
    window.onload = function(){
        var attrInt = document.getElementsByTagName('input')[0].value;
        var attrNum = document.getElementsByTagName('input')[1].value;
        var enterBtn = document.getElementsByTagName('button')[0];
        var resetBtn = document.getElementsByTagName('button')[1];
        var changeBox = document.getElementById('willBox');
        enterBtn.onclick = function(){
           changeBox.style.cssText = '"attrInt":"attrNum";' ;
        }
        resetBtn.onclick = function(){
            changeBox.style.cssText = "";
        }
        console.log(typeof attrInt);
        console.log(attrInt);
        console.log(typeof attrNum);
        console.log(attrNum);
       }
</script>

运行之后实现不了用户输入值,改变div属性的想法。
代码中“ changeBox.style.cssText = '"attrInt":"attrNum"这一段还望解惑,谢谢!

3个回答


        var enterBtn = document.getElementsByTagName('button')[0];
        var resetBtn = document.getElementsByTagName('button')[1];
        var changeBox = document.getElementById('willBox');
        enterBtn.onclick = function(){
            var attrInt = document.getElementsByTagName('input')[0].value;
            var attrNum = document.getElementsByTagName('input')[1].value;
            changeBox.style.cssText = attrInt+":"+attrNum+";";
        }

loveiszy
loveiszy 感谢提供思路!完美解决方案已写在下面的回复中
一年多之前 回复

我试了一下 应该是你拼接的这里错了 还有 input的值没取到,输入的值不规范也不行
var enterBtn = document.getElementsByTagName('button')[0];
var resetBtn = document.getElementsByTagName('button')[1];
var changeBox = document.getElementById('willBox');
enterBtn.onclick = function(){
var attrInt = document.getElementsByTagName('input')[0].value;
var attrNum = document.getElementsByTagName('input')[1].value;
changeBox.style.cssText = attrInt+ "; "+attrInt+";";
}
正确的:
图片说明
错误显示:
图片说明

loveiszy
loveiszy 是的,我后来改进了写法,完美的解决了问题。解决方案我写在下面的回复中了,谢谢你。
一年多之前 回复
<script type="text/javascript">
    window.onload = function(){
        var attrInt = document.getElementsByTagName('input')[0];
        var attrNum = document.getElementsByTagName('input')[1];
        var enterBtn = document.getElementsByTagName('button')[0];
        var resetBtn = document.getElementsByTagName('button')[1];
        var changeBox = document.getElementById('willBox');
        enterBtn.onclick = function(){
            changeBox.style.cssText = attrInt.value+":"+attrNum.value+";";
        }
        resetBtn.onclick = function(){
            changeBox.style.cssText = "";
        }
        console.log(typeof attrInt);
        console.log(attrInt);
        console.log(typeof attrNum);
        console.log(attrNum);
       }
</script>

不用在第一次给"attrInt"和"attrNum"赋值的时候取变量的value值,而是在执行onclick()时取变量的value。这样就能做到动态获取用户输入的的值。谢谢,以上两位的回答!

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐