HTML对象丢失

时间:2015-08-11 10:35:55

标签: jquery html jquery-ui

我有一个页面,其中通过JQuery加载函数填充表TR和TD。一切正常。以下是填充到表格中的实际html。

                <tr>
                <td width="50%" colspan="1" align=left bgcolor=696969>
                    <font style="COLOR: white; FONT: 8pt/11pt verdana">
                        Route Name
                    </font>
                </td>
                <td width="30%" colspan="1" align=right bgcolor=696969>
                    <font style="COLOR: white; FONT: 8pt/11pt verdana">
                        Traffic Percentage
                    </font>
                </td>
            </tr>
            <tr>
                <td width="50%" colspan="1" align=left>
                    TRN_01
                </td>
                <td width="30%" colspan="1" align=right id="X1" onclick='opendlg("X1", "70");'>
                    70
                </td>
            </tr>
            <tr>
                <td width="50%" colspan="1" align=left>
                    RTN_02
                </td>
                <td width="30%" colspan="1" align=right id="X2" onclick='opendlg("X2", "30");'>
                    30
                </td>
            </tr>

如果你能看到我有一个功能,它会打开一个对话框,用于编辑PCT值。一旦对话框关闭,我正在尝试更新TD的值,并且我尝试使用$(&#34;#X2&#34;)或使用getElimentByID访问它们,但似乎没有任何效果。以下是代码的剥离版本。

var dlg;

$(document).ready(function () {

$("#SEL_PFX").change(function() {

$("#TBL_OUTPUT").load("getdata.php?TYPE=3"+"&PARAM1=" + encodeURIComponent($("#SEL_PFX").val()), function() {

                dlg = $("#DLG_PCT_ADJ").dialog({

                    autoOpen: false,
                    height: 200,
                    width: 300,
                    modal: true,
                    buttons: {
                        "Update Value": function () {
                            if ($("#newpct").val() >= 5 && $("#newpct").val() <= 100)
                            {
                                var XTDID = $(this).data("TDID");
                                alert($("#" + XTDID).val());
                            } else {
                                alert('The value must be between 5 and 100');
                            }
                        },
                        Cancel: function () {
                            dlg.dialog("close");
                        }
                    }
                });
        });
});

function opendlg(tdid, tdval)
{
    dlg.data('TDID', tdid).data('PCT', tdval).dialog('open');
    $("#newpct").val(tdval);
}

真的很想听听你的想法。

1 个答案:

答案 0 :(得分:4)

表单控件具有值。其他要素没有。

使用.text().html(),而不是.val()