2017-01-20 6 views
1

Я хочу изменить текст бумажной кнопки с "Изменить" на "Сохранить".Изменение текста бумажной кнопки с помощью JavaScript (полимер 1.0)

Как я могу достичь этого с помощью JavaScript?

Моей кнопка

<paper-button id="msbutton" onclick="_changeText">Modify</paper-button> 

JavaScript

Polymer({ 
    is: "test-button", 
    _changeText: function() { 
    var button = document.getElementById('msbutton'); 
    //What comes here? 
}) 

ответ

3

Является ли #msbutton внутри вашего test-button элементов?

Вы должны использовать Polymer's event binding syntax (on-click не onclick):

Polymer({ 
 
    is: "test-button", 
 
    _changeText: function() { 
 
    var button = this.$.msbutton; 
 
    button.textContent = 'new text'; 
 
    } 
 
});
<base href="http://polygit.org/components/"> 
 
<link href="polymer/polymer.html" rel="import"> 
 
<link href="paper-button/paper-button.html" rel="import"> 
 

 
<test-button></test-button> 
 

 
<dom-module id="test-button"> 
 
    <template> 
 
    <paper-button id="msbutton" on-click="_changeText">Modify</paper-button> 
 
    </template> 
 
</dom-module>

+0

@Vinod Louis Ya «onclick» была проблемой. Он работает сейчас. Благодаря :-) – BlueCat

0

Вы можете непосредственно использовать с помощью полимерного селектора йота через

этого. $$ ("# msbutton"). InnerText = «Сохранить»;

+0

Я не уверен, что если бы я сделал это правильно (извините я новичок), но я изменил свою функцию _changeText: function() { это. $$ ("# msbutton"). InnerText = "Сохранить"; } Теперь я получаю сообщение об ошибке: ** Неподготовлено ReferenceError: _changeText не определен в HTMLElement.onclick ** Я что-то не так со ссылкой на функцию? – BlueCat

+1

в html set as on-tap = "_ changeText" дайте мне знать, если сработали или нет –

+0

@BlueCat см. Этот скрипт https://jsfiddle.net/2q3fqehz/123/ –