JQuery выбор тега, где его data-id attr = другой тег с тем же идентификатором данных

0

Здесь мой PHP:

class generate{

// PROJECT TABLE GENERATOR

    public function genTable(){
        global $data;
        global $select;
        global $pdo;


        $result = $data->filterData();

            echo '<table class="table">
                <tbody>';

                echo '<tr>
                        <th>heaer1</th>
                        <th>Header2</th>
                        <th>header3</th>
                        <th>header4</th>
                        <th>header5</th>
                        </tr>


                        <tr class="addForm">
                            <td>
                            <form action="parsers/parseData.php" method="post">
                            <label>Name</label>
                            <input type="text" id="Name">

                            <label>Purpose</label>
                            <input type="text" id="Purpose" >

                            </form>
                            </tr>';

            foreach($result as $res){

            echo '<tr data-id="' . $res['ID'] . '" ><td>' . $res['Name'] .  '</td>
            <td>' . $res['Purpose'] . '</td>
            <td>' . $res['Owner'] . '</td>  
            <td>' . $res['Start'] . '</td>  
            <td>' . $res['End'] . '</td>    
            <td style="width:110px;"><button type="button" id="deleteBtn" class="btn btn-default" name="deleteBtn"><b class="glyphicon glyphicon-trash"></b></button>
            <button type="button" id="editBtn" class="btn btn-default" name="editBtn"><b class="glyphicon glyphicon-pencil"></b></button>
            </td>
            </tr>

            <tr data-id="' . $res['ID'] . '" class="hidden" id="editForm">
            <td>
                <form action="/" method="post">
                    <div class="form-group">
                    <input type="text" id="Name" placeholder="Name">
                    </div>          
            </td>
            <td>
                    <div class="form-group">
                    <input type="text" id="Purpose" placeholder="Purpose">
                    </div>
            </td>
            <td>

            ';

             $select->genSelect();

             echo '             
            </td>
            </form>
            </tr>

            ';

        }
        echo '</form>
    </tbody></table>';

        }

JQuery...

$('button#editBtn').click( function(){

var id = $(this).parents('tr').data('id');

var Formid = $(this).closest('tr[id=editForm]').removeClass('hidden');


 console.log(Formid);

});

jQuery не работает, то, что я хочу сделать, это выбрать tr с идентификатором editForm, который равен tr над ним, так что, когда я нажимаю кнопку редактирования рядом с ним в таблице, форма падает вниз под строкой из которых кнопка включена... это возможно?

Я тоже пробовал это, но он дает результаты с неопределенным

    $('button#editBtn').click( function(){

var id = $(this).parents('tr').data('id');

 var attrId = $('tr#editForm').parents().data("id");

console.log(attrId); });

ох и theres также это...

$(document).ready(function(e) {

$('tr#editForm').toggle(); });

когда я выберу правильный тег, надеюсь, я смогу просто переключить его снова

  • 1
    было бы легче помочь, если вы публикуете визуализированный html не безобразный код PHP
  • 0
    рассмотреть .attr('data-id')
Показать ещё 1 комментарий
Теги:
html-table

1 ответ

1

Может быть, это может вам помочь. Я не мог потрудиться, чтобы пройти через код, обнаружив ошибку, поскольку это немного грязно, но я думаю, что я просто понял, какова была ваша цель. Взглянуть:

<? foreach($result as $res) { ?>
    <table>
        <tr id="<?= $res['ID'] ?>">
            <td>Some information</td>
            <td width="10%"><a class="edit">Edit</a></td>
        </tr>
        <tr id="editForm_<?= $res['ID'] ?>" class="hidden">
            <td colspan="2">Edit Form</td>
        </tr>
        <tr id="<?= $res['ID'] ?>">
            <td>Some information</td>
            <td width="10%"><a class="edit">Edit</a></td>
        </tr>
        <tr id="editForm_<?= $res['ID'] ?>" class="hidden">
            <td colspan="2">Edit Form</td>
        </tr>
    </table>
<? } ?>

$('.edit').click(function() {
   var trID = $(this).closest('tr').attr('id');
   $('tr#editForm_'+trID).fadeToggle();
});

SQL FIDDLE DEMO

Ещё вопросы

Сообщество Overcoder
Наверх
Меню