0

jqueryでIDを使用して入力値を変更しようとしていますが、機能せず、コンソールにエラーメッセージも返されません。

データが空ではないかどうかを確認するために、console.log も実行しました。

以下は私のスクリプトです

   $('.changer_etat').click(function(){
        var id_etat = $(this).closest('tr').find('span.id_etat').text();
        var date_depart = $(this).closest('tr').find('span.date_depart').text();
        var date_fin = $(this).closest('tr').find('span.date_fin').text();
        var etat_programme = $(this).closest('tr').find('span.etat_programme').text();
        $('#date_depart').val(date_depart);
        console.log(date_fin);
        console.log(id_etat);
        console.log(etat_programme);
    });

私は多くのことを試しました。お気に入り

$('#date_depart').attr('value',date_depart)

しかし、これは機能しません。私もappend方法を試してみましたが成功しませんでした

その Web サイトまたは Google で行われたすべての検索では、問題を見つけることができませんでした。

編集 :

以下は、すべての行とそこにクラスがあるphp部分です

` <?php while ($historique = mysql_fetch_assoc($liste_historique)): ?>
                <tr>
                    <td style="text-align: center">
                        <img src="../<?php echo fetchImageProgramme($historique['id_objectif']) ?>">
                    </td>
                    <td style="vertical-align: middle">
                        <span class="id_etat"><?php echo $historique['id_record'] ?></span>
                        <?php echo $historique['nom_programme'] ?>
                    </td>
                    <td style="text-align: center;vertical-align: middle">
                        <span class="date_depart"><?php echo date('d-m-Y', strtotime($historique['date_depart'])) ?></span>
                    </td>
                    <td style="text-align: center;vertical-align: middle">
                        <span class="date_fin"><?php echo date('d-m-Y', strtotime($historique['date_fin'])) ?></span>
                    </td>
                    <td style="text-align: center;vertical-align: middle">
                        <span class="etat_programme"><?php echo $historique['etat_programme'] ?></span>
                        <?php echo echoEtatProgramme($historique['etat_programme']) ?>
                    </td>
                    <td style="vertical-align:middle">
                        <a class="uibutton icon add" href="#" style="width:160px;text-align: left">Créer un programme</a><br><a class="uibutton icon edit changer_etat" href="#" style="width:160px;text-align: left">Changer l'état</a>
                    </td>
                </tr>
            <?php endwhile; ?>`

そして、入力したいIDのフォームがあります

<div id="changer_etat" style="display:none" title="Changer l'état de mon programme">
        <table class="noborder" style="width:400px">
            <tr>
                <td style="width:200px;text-align: right;font-weight: bold">
                    Date de début :
                </td>
                <td>
                    <input type="date_debut" class="" id="date_depart">
                </td>
            </tr>
            <tr>
                <td style="width:200px;text-align: right;font-weight: bold">
                    Date de fin :
                </td>
                <td>
                    <input type="date_fin" class="datepicker">
                </td>
            </tr>

            <tr>
                <td style="width:200px;text-align: right;font-weight: bold">
                    État :
                </td>
                <td>
                    <select name="etat" >
                        <option value="1">
                            En attente
                        </option>
                        <option value="2">
                            Commencé
                        </option>
                        <option value="3">
                            Terminé
                        </option>
                    </select>
                </td>
            </tr>
        </table>
4

1 に答える 1

1

その属性を設定しないでください。使用する.val()

$('#date_depart').val(date_depart)

編集:

上記の DOM の問題は、同じ ID を持つ 2 つの入力フィールドがあることです。これにより、htmlが無効になります。同じ ID を持つ 2 つの要素を持つことはできません。

于 2013-10-30T18:20:28.303 に答える