Jump to content
php.lv forumi
  • 0

parent > children


anonīms

Question

<td>


<a href="mistisks_a">[x]</a>
<div class="order-form">
<form id="php_lv-2" class="webform-client-form"></div>
</div>
</td>

 

 

funkcija notiek uz a click'a

var webform_id = $(this).parents('td').children('.webform-client-form').attr('id');

gan

var webform_id = $(this).parents('td').children('form').attr('id');

 

alert webform_id izmet undefined.

 

Kur varētu būt problēma?

Link to comment
Share on other sites

8 answers to this question

Recommended Posts

  • 0

Īsti nesaprotu ko vēlies panākt? Tai formai nav gadījumā aizmirsts noslēdzošais tags? Labāk uzraksti ko vēlies panākt? Ja Tu gribi dabūt formas id pēc formas nosaukuma, tad to varētu darīt šādi:

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

   <title>Form id</title>
</head>
<body>
<form id="form_id" name="form_name" action="" method="post">
</form>

<a href="javascript: alert(document.form_name.getAttribute('id'));">Get id</a>
</body>
</html>

Tikai kods bez jquery, iespējams getAttribute() ne visos pārlūkos strādās, bet ja aizvietosi atbilstoši visu ar jquery funkcijām, būtu jāstrādā.

Link to comment
Share on other sites

  • 0

forma ģenerējas automātiski un vienīgais, kas viņai ir ir

 

<form id="webform-client-form-19-3" class="webform-client-form" enctype="multipart/form-data" method="post" accept-charset="UTF-8">

un nē, tas html ir tikai piemērs no struktūras, ne copy/paste.

 

 

+ vēl tas, ka lapā ir vairākas formas ar šādu klasi un man vajag izvilkt tikai to, kura atrodas iekšs noteiktā id (kur tiek a click palaists)

Edited by anonīms
Link to comment
Share on other sites

  • 0

  	$('.view-id-front_offers.view-display-id-block_1 .views-field-view-node a').click(function() {
   	var webform = $(this).parents('td');


   	alert($(webform).children('.webform-client-form').length);
})

 

izvada 0 ;/

 

 

heh

 

find() :)

Edited by anonīms
Link to comment
Share on other sites

  • 0

children skaitās tikai tiešie parenta childreni, tas ir vienu līmeni apakšā. Forma atrodas divā, tāpēc nav td childrens. Jā, jāizmanto .find(), un arī parents() vietā izmanto parent(), lai scripts nedarītu liekas darbības

Link to comment
Share on other sites

  • 0

Nu viens no variantiem, sataisīts uz ātro, varētu būt šāds. Pēti kodu un pārtaisi atbilstoši kā Tev vajag. Bez jquery, tāpēc varēsi arī saīsināt dažas lietas, izmantojot to. Protams kods der tikai tad, ja katrs td satur tikai vienu formu, ja ir vairākas, tad jāiet pa ciklu un jāmeklē ar atbilstošo klasi, nosaukumu vai id, atbilstoši specifikai. Tagad ir alert, bet ja to nomainīsi uz return, funkcija atgriezīs id.

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

   <title>Form in td</title>

   <script type="text/javascript">
       function getElement(id) {
           if (document.getElementById) {
  	         return document.getElementById(id);
           } else if (document.all) {
  	         return document.all[id];
           } else if (document.layers) {
  	         return document.layers[id];
           }
       }

       function get_form_id(elem) {
           form_array = elem.parentNode.getElementsByTagName('form');
           alert(form_array[0].getAttribute('id'));
       }
   </script>
</head>
<body>
<table cellpadding="0" cellspacing="0">
<tr>
   <td id="td_id">
       <form id="id_1" name="name_1" action="" method="post">
       </form>

       <a href="" onclick="javascript: get_form_id(this); return false;">Click 1</a>
   </td>
   <td>
       <form id="id_2" name="name_2" action="" method="post">
       </form>

       <a href="" onclick="javascript: get_form_id(this); return false;">Click 2</a>
   </td>
   <td>
       <form id="id_3" name="name_3" action="" method="post">
       </form>

       <a href="" onclick="javascript: get_form_id(this); return false;">Click 2</a>
   </td>
</tr>
</table>
</body>
</html>

Edited by Maris-S
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...