jquery получить родителя и обратится к элементу внутри по class
прошу помощи :)
1) как кликая по span получить ответ , получить номер/имя родителя и загрузить ответ внутрь в <div class='otvet'> ? 2) как правильно сделать функцию z_click , чтобы в зависимости от nomer/номера было разное поле data ? код можно менять (элементы можно называть по разному <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script> <script type="text/javascript"> function z0_click(){ $.ajax({ type: "POST", url: "test.php", data: "sid=0&z0f1="+$('#z0f1').val()+"&z0f2="+$('#z0f2').val(), success: function(response){ $('#z0').html(response); } }); }; /* нужно сделать несколько массивов data и подставлять их допустим <div class='otvet'> // код заккомментировал, т.к. не рабочий function z_click(nomer){ // или function z_click(){ - если брать номер родителя div $.ajax({ type: "POST", url: "test.php", data: // data: "sid=1&z1f1="+$('#z1f1').val()+"&z1a1="+$('#z1a1').val(), // исходная строка, но нам нужно несколько таких (в зависимости от вопроса) if(nomer='1') {return "\"sid=1&z1f1=\"+$('#z1f1').val()+\"&z1a1=\"+$('#z1a1').val(),"}; else if(nomer='2') {return "sid=2&z2f1="+$('#z2f1').val()+"&z2a1="+$('#z3a1').val(),}; else if(nomer='3'){return "sid=3&z3f1="+$('#z3f1').val()+"&z3a1="+$('#z3a1').val(),}; success: function(response){ $('#otvet').html(response); // как правильно , чтобы выводился в нужный нам div class='otvet' (в зависимости от вопроса) ?? } }); }; */ </script> <? header("Content-Type: text/html; charset=windows-1251"); if($_POST['sid']=="0") {$a=$_POST[z0f1]+$_POST[z0f2]; echo " Сумма ".$a;} elseif ($_POST['sid']=="1") {fz1();} elseif ($_POST['sid']=="2") {fz2();} elseif ($_POST['sid']=="3") {fz3();} else {fz4();}; function fz1(){if($_POST[z1f1]>$_POST[z1f2]) {echo 'да' ;} else {echo 'нет';}; }; function fz2() {$a=$_POST[z2f1]*$_POST[z1f2]; echo " Ответ2 ".$a; }; function fz3() {$a=$_POST[z3f1]/$_POST[z3f2]; echo " Ответ3 ".$a; }; function fz4() { ?> <body> <div id="0">вопрос 0: <input size="1" type="text" id="z0f1" value="5"> прибавить <input size="1" type="text" id="z0f2" value="7"> <span onclick="z0_click(); return false;">получить ответ</span> <div id="z0"></div><hr> </div> <div name='why1'>вопрос 1: <input size="1" type="text" id="z1f1" value="5"> больше <input size="1" type="text" id="z1f2" value="7"> <span onclick="z_click(1); return false;">получить ответ</span> <div class='otvet'></div> </div> <div name='why2'>вопрос 2: <input size="1" type="text" id="z2f1" value="5"> Умножить <input size="1" type="text" id="z2f2" value="7"> <span onclick="z_click(2); return false;">получить ответ</span> <div class='otvet'></div> </div> <div name='why3'>вопрос 3: <input size="1" type="text" id="z3f1" value="5"> Поделить <input size="1" type="text" id="z3f2" value="7"> <span onclick="z_click(3); return false;">получить ответ</span> <div class='otvet'></div> </div> </body> <? }; ?> |
Вы опубликовали очень много кода.
Пожалуйста, локализуйте проблему! Выделите фрагмент кода, по которому есть вопрос и опубликуйте его отдельно. И, по возможности, уберите из кода мусор, чтобы нам легче было сориентироваться и помочь решить вашу проблему. Спасибо. P.S. код форматируют специальные теги [ js ] ... [/js], [ html ] ... [/html] и другие аналогичные, сам. http://javascript.ru/formatting |
Получить родителя и найти в нем элемент по классу:
$(".elem").parent().find(".childClass") |
$('#z0').html(response);это строка вставки в <div id="z0"> при клике на <span onclick="z_click(); return false;">получить ответ как изменить эту строку JS , чтобы вставлялось в class=otvet (родитель div общий) <div name='why1'>...<span onclick="z_click(); return false;">ответ</span><div class='otvet'></div></div> |
<span onclick="z_click(); return false;">ответ</span> - зачем return false?
|
Цитата:
z_click() {$('.this').parent().find(".otvet").html('ответ');}при клике получить родителя текущего элемента и в дочерний элемент с класс otvet вставить текст <div name='why1'>...<span onclick="z_click();">ответ</span><div class='otvet'></div></div> |
_Eldar_,
на всякий у дива нет намы <!DOCTYPE HTML> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style type="text/css"> </style> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> <script> function z_click(el) {$(el).parent().find(".otvet").html('ответ');} </script> </head> <body> <div name='why1'>...<span onclick="z_click(this);">ответ</span><div class='otvet'></div></div> </body> </html> |
Часовой пояс GMT +3, время: 08:58. |