这是我的jquery代码。 http://jsfiddle.net/geekrule/ZnAvP/1/
当我选择一个图像时,会在图像的源中添加一个文本框,并添加一个“名称”属性。
现在当我取消选择图像时,我希望更新“名称”。
for ex:
i select images 1,3,4,5
corresponding value of 'name' of input boxes will be 1,2,3,4
and now when i unselect images -3,4
value of 'name' should be 1 and 2(this part is what i am stuck at.the values i get are 1,4).
他们没有得到更新
希望你能理解这个问题。请帮助我。提前谢谢
答案 0 :(得分:2)
在我看来,简单的解决方案是在每个图像选择上重新生成文本框:
<div id="selectList">
<img src="http://tinyurl.com/26asnv7" />
<img src="http://tinyurl.com/26asnv7" />
<img src="http://tinyurl.com/26asnv7" />
<img src="http://tinyurl.com/26asnv7" />
<img src="http://tinyurl.com/26asnv7" />
<img src="http://tinyurl.com/26asnv7" />
<img src="http://tinyurl.com/26asnv7" />
<img src="http://tinyurl.com/26asnv7" />
</div><form id='if' name='forms' method='post'>
<button type='submit' class="uploadPic">Upload Fb</button>
</form>
$(function() {
$("#selectList img").click(
function(event) {
if( !$(this).is(".clicked") && $("#selectList img.clicked").length >= 3){
event.preventDefault();
alert('only 3 photos allowed');
return;
}
$(this).toggleClass("clicked");
regenerateTextBoxes();
});
});
function regenerateTextBoxes() {
$('#if .selection').remove();
$("#selectList img.clicked").each(function(index, element) {
var $input = $('<div>', {
'class': 'selection',
'html': $('<input>', {
'type': 'text',
'value': $(this).attr('src'),
'name': 'pics' + index
})
});
$("#if").append($input);
});
}