Как изменить текст кнопки в jQuery?
Как изменить текстовое значение кнопки в jQuery? В настоящее время моя кнопка имеет "Добавить" в качестве ее текстового значения, и после нажатия на нее я хочу, чтобы она изменилась на "Сохранить". Я пробовал этот метод ниже, но до сих пор без успеха:
$("#btnAddProfile").attr('value', 'Save');
Ответы
Ответ 1
Зависит от того, какую кнопку вы используете
<input type='button' value='Add' id='btnAddProfile'>
$("#btnAddProfile").attr('value', 'Save'); //versions older than 1.6
<input type='button' value='Add' id='btnAddProfile'>
$("#btnAddProfile").prop('value', 'Save'); //versions newer than 1.6
<!-- Different button types-->
<button id='btnAddProfile' type='button'>Add</button>
$("#btnAddProfile").html('Save');
Ваша кнопка также может быть ссылкой. Вам потребуется опубликовать HTML-код для более конкретного ответа.
EDIT: они будут работать, если вы завернули его в вызов .click()
, конечно
EDIT 2: более новые версии jQuery (от версии > 1.6) используют .prop
, а не .attr
РЕДАКТИРОВАТЬ 3. Если вы используете пользовательский интерфейс jQuery, вам нужно использовать метод DaveUK (ниже) для настройки свойства text
Ответ 2
Для кнопок, созданных с помощью .Button() в jQuery........
В то время как другие ответы изменят текст, они испортят стиль кнопки, оказывается, что при нажатии кнопки jQuery текст кнопки вложен в пределах диапазона, например.
<button id="thebutton">
<span class="ui-button-text">My Text</span>
</button>
Если вы удалите диапазон и замените его текстом (как в других примерах) - вы потеряете диапазон и соответствующее форматирование.
Итак, вам действительно нужно изменить текст в теге SPAN и НЕ КНОПКУ!
$("#thebutton span").text("My NEW Text");
или (если, как я, это делается при событии клика)
$("span", this).text("My NEW Text");
Ответ 3
Правильный способ изменения текста кнопки, если он был "застегнут" с помощью JQuery, - это использовать метод .button():
$( ".selector" ).button( "option", "label", "new text" );
Ответ 4
Используйте .val()
Здесь ссылка на JSfiddle
Ответ 5
Чтобы изменить текст на кнопке, просто выполните следующую строку jQuery
для
<input type='button' value='XYZ' id='btnAddProfile'>
использование
$("#btnAddProfile").val('Save');
а для
<button id='btnAddProfile'>XYZ</button>
используйте этот
$("#btnAddProfile").html('Save');
Ответ 6
Вам нужно сделать .button("refresh")
HTML:
<button id='btnviewdetails' type='button'>SET</button>
JS:
$('#btnviewdetails').text('Save').button("refresh");
Ответ 7
Если у вас есть кнопка с кнопкой, это, похоже, работает:
<button id="button">First caption</button>
$('#button').button();//make it nice
var text="new caption";
$('#button').children().first().html(text);
Ответ 8
$("#btnAddProfile").click(function(){
$("#btnAddProfile").attr('value', 'Save');
});
Ответ 9
document.getElementById('btnAddProfile').value='Save';
Ответ 10
$("#btnAddProfile").text("Save");
Ответ 11
Вы можете использовать что-то вроде этого:
$('#your-button').text('New Value');
Вы также можете добавить дополнительные свойства:
$(this).text('New Value').attr('disabled', true).addClass('bt-hud').unbind('click');
Ответ 12
Вы можете использовать
$("#btnAddProfile").text('Save');
хотя
$("#btnAddProfile").html('Save');
будет работать, но он вводит в заблуждение (создается впечатление, что вы могли бы написать что-то вроде
$("#btnAddProfile").html('Save <b>now</b>');
но, конечно, вы не можете
Ответ 13
он работает для меня
HTML:
<button type="button" class="btn btn-primary" id="btnSaveSchedule">abc</button>
JS
$("#btnSaveSchedule").text("new value");
Ответ 14
Вы дали своей кнопке класс вместо id? попробуйте следующий код
$(".btnSave").attr('value', 'Save');
Ответ 15
Это должно сделать трюк:
$("#btnAddProfile").prop('value', 'Save');
$("#btnAddProfile").button('refresh');
Ответ 16
$("#btnAddProfile").html('Save').button('refresh');
Ответ 17
что точно верно, это работает для меня;
$('#btnAddProfile').bind('click',function(){
$(this).attr('value','save');
})
Вы уверены, что JQuery доступен и что ваш код находится в правильном месте?
Ответ 18
$("#btnviewdetails").click(function(){
if($(this).val()!="hide details"){
$("#detailedoutput").show();
$(this).val('hide details');
}else{
$("#detailedoutput").hide();
$(this).val('view more details');
}
});
Ответ 19
$( "#btnAddProfile" ).on( "click",function(event){
$( event.target ).html( "Save" );
});
Ответ 20
$(document).ready(function(){
$(":button").click(function(){
$("p").toggle();
if (this.value=="Add") this.value = "Save";
else this.value = "Add";
});
});
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
</head>
<body>
<input type='button' value='Add' id='btnAddProfile'>
<p>This is a paragraph with little content.</p>
<p>This is another small paragraph.</p>
</body>
</html>