2012-07-19 2 views
0

img 태그 내에서앞에 추가는 .... 이건 내 jQuery 코드입니다

$("#addinp").click(function() { 
    $(this).prepend('<label>Item ' + i + '<span class="small"></label><input type="text" name="middlename[]" />'); 
}); 

을 HTML을 추가하지 않습니다 그리고 이것은 내 HTML입니다 은 "다른 단추를 추가"하기 전에 - 성가신 내가 이렇게하면이 ... 파일명의 전에이 작동 형태에

$('form').prepend('<lab........ 

입니다 .......하지만 그냥 표시되지 않습니다 이미지 앞에 ...

+0

나는''해야'' – ManseUK

+0

레이블이 위해를해야 하나 제안했다 입력의 ID와 일치하는 속성이거나 입력을 포함해야합니다. 그대로서는 쓸모가 없습니다. – Quentin

+0

잘못된 HTML을 앞에두고 있습니다. –

답변

3

prepend() 대신 유효한 HTML을 사용하여 before()을 다음과 같이 시도하십시오.

prepend()은 전달 된 요소를 대상의 시작 부분에 자식으로 삽입하기 때문에 여기서는 작동하지 않습니다.

$("#addinp").click(function() { 
    $(this) 
    .before('<label>Item '+i+'<span class="small"></span></label><input type="text" name="middlename[]" />'); 
}); 

또한 .insertBefore()를 사용할 수 있습니다

$("#addinp").click(function() { 
    $('<label>Item '+i+'<span class="small"></span></label><input type="text" name="middlename[]" />').insertBefore(this); 
}); 

것은 당신의 위의 HTML을 수정하는 것을 잊지 마십시오. the manual에서

+0

.before() 치료를 받았다 .... 모두들 감사합니다 : D – AttikAttak

+0

@AttikAttak 대단합니다 – thecodeparadox

2

: 당신은 같은 내용을 삽입 할 수 없습니다

.prepend() 메서드는 jQuery를 컬렉션에서 각 요소의 첫 번째 자식으로 지정된 내용을 삽입 이미지가 자식을 가질 수 없기 때문에 이미지의 첫 번째 자식.

before() 이미지 앞에 내용을 삽입하고 싶습니다.

관련 문제