Отключить кнопку Отправить для демонстрации
Я пытаюсь отключить кнопку "Отправить" на странице меню с вкладками для демо-счета. К сожалению, каждая из 3 вкладок меню имеет одинаковый идентификатор кнопки - "Mod0EditRecord". Я не могу переименовать идентификатор кнопки и не могу использовать класс вместо этого, поскольку он отображается в онлайн-базе данных.
<input type="submit" value="Update" name="Mod0EditRecord" id="Mod0EditRecord">
<input type="submit" value="Update" name="Mod0EditRecord" id="Mod0EditRecord">
<input type="submit" value="Update" name="Mod0EditRecord" id="Mod0EditRecord">
Я могу успешно установить атрибут первой кнопки на отключен следующим образом
if (login == 'demo.account')
{
document.getElementById('Mod0EditRecord').setAttribute("disabled","disabled");
document.write("<br><p style=\"text-align:left; padding-left:100px; font-size:10px;\">** Update button is disabled for the demo **</p>");
}
else
{
document.getElementById('Mod0EditRecord').removeAttribute("disabled");
}
Я ищу руководство о том, как установить атрибут для двух других.
заранее спасибо
3 ответа
Вы можете использовать библиотеку javascript dom, например jQuery, для обхода узлов HTML и добавления идентификаторов классов / изменений по своему усмотрению.
Если вам нужно придерживаться этих атрибутов, в частности, вы можете сделать что-то вроде этого в jQuery:
$('input[name="Mod0EditRecord"]').eq(0).attr('disabled','disabled')
//this is the first input, change .eq(index) to the value you need
Возвращаемое значение document.getElementById должно быть массивом. И вы можете пройти через них.
var elem = document.getElementById('Mod0EditRecord');
for(var i = 0; i < elem.length; i++)
{
elem[i].setAttribute("disabled","disabled");
}
Или, если вы используете jquery, вы можете использовать метод.next() для получения двух других элементов.
Вы не можете использовать document.getElementById
, так как это возвращает первый элемент с этим идентификатором. Я бы не стал использовать jQuery, если вы используете VanillaJS, поскольку загрузка библиотеки только для этой функции довольно бесполезна.
Это то, что вы идете делать: использовать document.getElementsByTagName
чтобы получить все input
-типы, проверьте, если это из type submit
а также disable
тот.
var inputs = document.getElementsByTagName('input');
for(var i = 0; i < inputs.length; i++ ) {
if(inputs[i].type === "submit") {
var submitbtn = inputs[i];
submitbtn.setAttribute("disabled", "disabled");
}
}