- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
(1)Сначала:
<!DOCTYPE html>
<html>
<head>
<script type='text/javascript' src='./Plugins/jQuery/jquery.min.js'></script>
<script>
function rezlt(a,b,c) {
$.ajax({
url: "test.php",
type: 'POST',
data: 'a='+a+'&b='+b+'&c='+c+'',
cache: false,
success: function(html){
$(".content").html(html) ;
}
});
}
</script>
</head>
<body>
//тут уже результат работы, строк свыше 1000
<span class="content" onclick="rezlt(1,2,3)" >answer1</span><br/>
<span class="content" onclick="rezlt(4,5,6)" >answer2</span><br/>
<span class="content" onclick="rezlt(7,8,9)" >answer3</span><br/>
</body>
</html>
(2)Решение:
<!DOCTYPE html>
<html>
<head>
<script type='text/javascript' src='./Plugins/jQuery/jquery.min.js'></script>
<script>
function rezlt(a,b,c,nid) {
$.ajax({
url: "test.php",
type: 'POST',
data: 'a='+a+'&b='+b+'&c='+c+'',
cache: false,
success: function(html){
$(nid).html(html) ;
}
});
}
</script>
</head>
<body>
//тут уже результат работы, строк свыше 1000
<span id="content" onclick="rezlt(1,2,3,seq1)" ><div id="seq1">answer1</div></span><br/>
<span id="content" onclick="rezlt(4,5,6,seq2)" ><div id="seq2">answer2</div></span><br/>
<span id="content" onclick="rezlt(7,8,9,seq3)" ><div id="seq3">answer3</div></span><br/>
</body>
</html>
Уже второй день бъюсь над проблемой.
Задача: Перегружать всю страницу не надо. По клику по объекту content отправляются данные на test.php
и некий результат присваивается объекту content, на который был совершен клик. Сначала было вот так - (1) но тут, присвоение производится сразу всем объектам content
Чую, что решение(2) говно, учитывая что объектов content будет свыше 1000.
istem 16.11.2011 17:06 # +2
Lure Of Chaos 16.11.2011 17:15 # 0
Govnocoder#0xFF 16.11.2011 17:17 # 0
3.14159265 16.11.2011 17:21 # 0
javascript: document.createElement("li").value = parseInt('1E-SUCKS',2);
Govnocoder#0xFF 16.11.2011 17:24 # 0
Lure Of Chaos 16.11.2011 17:11 # +2
actuator 16.11.2011 19:16 # +2
<span class="content"><div id="seq1">(seq1 - not loaded)</div></span>
<span class="content"><div id="seq2">(seq2 - not loaded)</div></span>
<span class="content"><div id="seq3">(seq3 - not loaded)</div></span>
и
$('.content div').click(function() {alert($(this).attr('id'));}); - получить нужный тебе id
Домашнее задание - понять, как оно работает. Тогда для тебя не всё потеряно.
P.S. Не издеваюсь над страждущим из-за уважения к доктайпу ;) А то достали всякие профессиАналы, пихающие доктайп XHTML где ни попадя.
truedizzy 17.11.2011 12:04 # 0
<!DOCTYPE html>
<html>
<head>
<script type='text/javascript' src='./Plugins/jQuery/jquery.min.js'></script>
<script>
$(document).ready(function(){
$('.content').click(function() {
nid=$(this);
});
});
function rezlt(a,b,c) {
$.ajax({
url: "test.php",
type: 'POST',
data: 'a='+a+'&b='+b+'&c='+c+'',
cache: false,
success: function(html){
($(nid).html(html)) ;
}
});
}
</script>
</head>
<style type="text/css">
</style>
<body>
<div class="content" onclick="rezlt(1,2,3)">answer1</div><br/>
<div class="content" onclick="rezlt(4,5,6)">answer2</div><br/>
<div class="content" onclick="rezlt(7,8,9)">answer3</div><br/>
</body>
</html>
GoodTalkBot 16.11.2011 22:46 # +4
bugmenot 17.11.2011 06:33 # −1
каждому!
guest8 09.04.2019 12:12 # −999