将输入框的背景设置为红色

问题描述:

对不起,我很抱歉。将输入框的背景设置为红色

我将一些错误检查代码添加到现有的(预建的)网站。我不能改变HTML。我需要改变的因素是:

<input type="text" name="Q_5533" size="4" value="1" class="form_input_general">

这是一个数量框。我需要将背景颜色更改为红色。所以基本上它更改为:

<input type="text" name="Q_5534" style="background-color: #ff3e3e" size="4" value="1" class="form_input_general">

每个页面上的元素名称的变化。我可以用得到它的代码:

var QuantityName ="Q_" + sProdRef;

我只是getDocument和setAttribute努力去改变它。我意识到这是非常基本的,我不能看到树木的木材。

请问有人可以帮我吗?

非常感谢

托尼

+1

你可以试试'document.getElementsByName(QuantityName)[0] .style.background ='red';' – Lixus

使用document.querySelector。它选择像CSS选择器的元素:

var quantityName = "Q_" + sProdRef; 
var element = document.querySelector('input[name=' + quantityName + ']'); 
element.style.backgroundColor = '#ff3e3e'; 
+0

这里是你的答案的[jsfiddle](https://jsfiddle.net/a3xn81y5/)。 – Anthony

+0

@Anthony谢谢 – PeterMader

+0

谢谢彼得。这很好。不确定2个答案中的哪一个更有效? – ag2

使用getElementsByName,它返回一个集合,所以第一场比赛应该这样做,是这样的:

var sProdRef = '5533'; // set somewhere before 

var QuantityName ="Q_" + sProdRef; 
document.getElementsByName(QuantityName)[0].style.backgroundColor='red'; 

小提琴这里:https://jsfiddle.net/pwwm169d/

+0

谢谢胡安。这是完美的。我错过了[0],然后沿着错误的正切线去掉了:) – ag2

+0

不客气! – Juan