无法在jquery mobile中更改动态生成的按钮文本

时间:2014-05-19 08:52:31

标签: javascript jquery jquery-mobile cordova

我使用jquery mobile在我的phonegap应用程序中动态创建了按钮。

var table = document.getElementById("skiTable");
var row = document.getElementById("skiparticulars");
var clone = table.rows[1].cloneNode(true);

var skiFile = clone.cells[0].getElementsByTagName('input')[0];
var skiformTitle = clone.cells[0].getElementsByTagName('input')[1];

skiFile.id = "skifile" + skiRowCount;
skiFile.value = "";
skiformTitle.id = "formTitle" + skiRowCount;

skiformTitle.value = "";
row.appendChild(clone);
skiRowCount++;

html代码就像

<table>
 <tr>
   <td>
      <input type="hidden" id="skifile1" />
      <input type="button" id="formTitle1"/>
   </td>
 <tr>
</table>

以下是更改按钮值的代码:

$("#skifile" + k).val(results.rows.item(j).ski_file);

        $('#formTitle'+ k).val(results.rows.item(j).formTitle);
        $("#formTitle"+k).button("refresh");
tried this also 
//$("#formTitle" + k).prop('value',results.rows.item(j).formTitle).button("refresh");

但它永远不会改变价值。

我提到了jquerymobile dynamically changing text for button issue

How to change the text of a button in jQuery?

1 个答案:

答案 0 :(得分:2)

jQuery Mobile 1.4示例:

工作示例:http://jsfiddle.net/Gajotres/8x8HE/

的JavaScript

$('#formTitle1').parent().html($('#formTitle1').parent().html() + 'Button text');

没有文字的按钮HTML:

<div class="ui-btn ui-input-btn ui-corner-all ui-shadow">
    <input type="button" id="formTitle1">
</div>

使用文字

按钮HTML
<div class="ui-btn ui-input-btn ui-corner-all ui-shadow">
    <input type="button" id="formTitle1">Button text
</div>

如果您想了解如何自定义jQuery Mobile元素,请阅读this文章。

jQuery Mobile 1.3及以下示例:

工作示例:http://jsfiddle.net/Gajotres/wLzA7/

的JavaScript

$('#formTitle1').parent().find('span span').html('Button text');

没有文字的按钮HTML:

<div data-corners="true" data-shadow="true" data-iconshadow="true" data-wrapperels="span" data-theme="c" data-disabled="false" class="ui-btn ui-shadow ui-btn-corner-all ui-btn-up-c" aria-disabled="false">
    <span class="ui-btn-inner">
        <span class="ui-btn-text"></span>
    </span>
    <input type="button" id="formTitle1" class="ui-btn-hidden" data-disabled="false"/>
</div>

使用文字

按钮HTML
<div data-corners="true" data-shadow="true" data-iconshadow="true" data-wrapperels="span" data-theme="c" data-disabled="false" class="ui-btn ui-shadow ui-btn-corner-all ui-btn-up-c" aria-disabled="false">
    <span class="ui-btn-inner">
        <span class="ui-btn-text">Button text</span>
    </span>
    <input type="button" id="formTitle1" class="ui-btn-hidden" data-disabled="false"/>
</div>