我正在尝试删除div旧图像并使用最后一个孩子(jQuery)添加一个新图像,但它不起作用我在旧图像旁边添加了一个新图像。 这是jQuery代码
$(function() {
$('.iconWrapper span').click(function(e){
var kleur=$(this).attr('class');
switch(kleur){
case 'color1':
$("#div1 img:last-child").remove();
alert($("#div1").html());
$('#div1').append('<img src="color/color1.jpg">');
break;
case 'color2':
$("#div1 img:last-child").remove();
$('#div1').append('<img src="color/color2.jpg">');
break;
case 'color3':
$("#div1 img:last-child").remove();
$('#div1').append('<img src="color/color3.jpg">');
break;
}
$('#hiddenimg').val(kleur);
e.preventDefault();
});
html code ::
<?php
error_reporting('E_ALL');
ini_set('display_errors', 1);
session_start();
$img=$_POST['img'];
$_SESSION['img']=$img;
?>
<div class="iconWrapper">
<ul class="color">
<li>
<a href="#" title="Selecteer"><span class="color1"></span></a>
</li>
<li>
<a href="#" title="Selecteer "><span class="color2" ></span></a>
</li>
<li>
<a href="#" title="Selecteer"><span class="color3"></span></a>
</li>
<li>
<a href="#" title="Selecteer"><span class="color4"></span></a>
</li>
</ul>
</div>
<form method="post" action="step3.php">
<div id="div1" >
<?php if(isset($_SESSION['img'])){
echo '<img src="' . $_SESSION['img'] . '" >' ;
} ?>
<input name="color" type="text" value="" id="hiddenimg" />
<input name="submit" type="submit" value="Submit" />
</div>
</form>
答案 0 :(得分:4)
你可以试试jQuery:last selector:link
因为你需要这样的东西:
$("#div1 img:last").remove();
或更好的版本
$("#div1 img").filter(":last").remove();
我现在不知道要测试,我希望这是你的工作解决方案:)
(对不起我的英文:“&gt;)
答案 1 :(得分:0)
您需要:last
而不是:last-child