2010-05-04 3 views
0

Должно быть, сегодня действительно немой - извините заранее; во всяком случае есть этот неупорядоченный списокПодумайте, это проблема именования

<ul> 
<li><div class="openuserform" >Info</div> <div class="userform"></div></li> 
<li><div class="openuserform" >Appearence</div> <div class="userform"></div></li> 
<li><div class="openuserform" >Pages</div> <div class="userform"></div></li> 
<li><div class="openuserform" >Services</div> <div class="userform"></div></li> 
<li><div class="openuserform" >Community</div> <div class="userform"></div></li> 
</ul> 

, которые по щелчку <div class="openuserform" > Я хочу, чтобы загрузить отдельную форму, например,

$('.openusersform').live('click',(function(){ 
$('.userform').load('form page.php'); 
}); 

ОК я могу получить формы для загрузки в правой DIV с помощью

$(this).next('.userform').show(); 
$('.userform').load('form page.php'); 

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

Выложен как (ul, li и т. Д.), Поэтому я могу иметь каждую загруженную форму, выровненную по соответствующему li.

Но я думаю, что должен быть лучший способ, как я, кажется, не получают никаких if(){} заявлений рабочих для обработки форм т.е. if(form1){ $.ajax etc } if (form2) {more ajax}

Предложения, пожалуйста, - спасибо.

ответ

0

Я думаю, вы хотите загрузить его в соседний div, так, вот так?

$('.openuserform').live('click', function(){ 
    // http://api.jquery.com/siblings/ 
    $(this).siblings('.userform').load('form-page.php'); 
}); 

Это предполагает, что эта разметка:

<ul> 
<li><div class="openuserform" >Info</div> <div class="userform"></div></li> 
<li><div class="openuserform" >Appearence</div> <div class="userform"></div></li> 
<li><div class="openuserform" >Pages</div> <div class="userform"></div></li> 
<li><div class="openuserform" >Services</div> <div class="userform"></div></li> 
<li><div class="openuserform" >Community</div> <div class="userform"></div></li> 
</ul> 
Смежные вопросы