2015-11-08 4 views
0

вот ситуация:Mootools: получить текст из таблицы родственного узла кликнутой ссылки в

| ID | Name | ... 
+----+--------+--- 
| 12 | Henry | ...  a whole list of names, ids,&c ...you get the idea 
+----+--------+--- 
| 13 | Julia | ... 
+-------------+--- 
... 

всех имена ссылка. Когда они выбраны, они загружают остальную часть таблицы для редактирования, передавая имя в быстрый запрос mysql. но поскольку я обманываю, мне нужно также захватить идентификатор, чтобы пройти. Мне также нужна его для обновления исправленной (и правильной!) записи.

так, используя MooTools, как я могу захватить текст у соседнего брата, когда я нажимаю ссылку? черт возьми, даже просто прост.

вот существующая функция:

function loadRecord(aName) { 
    console.log("loadRecord called with: "+aName); 
    user = $('submitterName').value; 
    id = $('table-id').text; // THIS IS THE PROBLEM RIGHT HERE. >_< 
    console.log('with user: '+user); 
    $('recordName').value = aName; 
    $('addRecordButton').value = 'Update Record'; 
    $('addRecordData').action='_php/updateRecord.php'; // this isn't working either... 
    var action=$('addRecordData').action; 
    console.log(action); 
    checkUserDB(aName,user,id); 
} 

, так как есть несколько строк в таблице, я не могу присвоить уникальный идентификатор для каждого идентификатора в какой-либо выгоды. я все еще застрял, пытаясь вытащить текст идентификатора таблицы, который относится к кликному соединению.

Надеюсь, я понятна. любая помощь или освещение были бы высоко оценены.

TIA crew!

WR!

+0

Вы можете вставить пример вашего HTML? и объясните, что вы думаете '$ ('table-id'). text' does? Эта строка всегда одна и та же? почему вы не используете 'get ('text') MooTools', почему бы не добавить идентификатор, который вы хотите, в ссылку, названную как поле 'data-'? – Sergio

+0

$ ('table-id) .text возвращает текст в элементе. не знаю, как реализовать плагин moo-data, или я бы использовал поле данных. – WhiteRau

ответ

0

Вот решение

HTML

<!--Change your HTML--> 
<table> 
    <tr> 
    <th>ID</th> 
    <th>Name</th> 
    </tr> 
    <tr> 
    <td>12</td> 
    <td><a>Henry</a></td> 
    </tr> 
    <tr> 
    <td>13</td> 
    <td><a>Julia</a></td> 
    </tr> 
</table> 

MooTools

window.addEvent('load', function(){ 
    window.addEvent('click:relay(a)', function(event){//Add your selector inside relay 
    event.preventDefault(); 
    console.log($(this).getParent('td').getPrevious().get('html')); 
    //Add Your AJAX code here 
    }); 
}); 

Здесь вы подключаете click event на якорь затем selecting parent (http://mootools.net/core/docs/1.5.2/Element/Element#Element:getParent) тогда, как у вас есть идентификатор в previous element (http://mootools.net/core/docs/1.5.2/Element/Element#Element:getPrevious) вы можете grab the previous element and get it's HTML

Вы можете проверить ручку здесь http://codepen.io/arifmahmudrana/pen/yYQeJX

+0

отлично! У меня была структура, спасибо за код. вы объяснили это очень четко, и я очень ценю это, потому что я понимаю решение. – WhiteRau

+0

@WhiteRau спасибо, пожалуйста, воздержитесь и выберите его как правильный ответ. –

 Смежные вопросы

  • Нет связанных вопросов^_^