어쩌면 내가 내 질문을 명확하게 설명하지 않았고, 내 질문이 필요하지 않다고 생각한다면 적어도 비슷한 솔루션을 볼 수있는 곳을 보여주십시오!. 필자의 견해로는 IE7 비교 가능성 문제를 다루어야한다.
IE7 (모든 것이 IE8 또는 Chrome에서 잘 보이는)의 jQuery로 기존 테이블 (클래스 = 'a') 뒤에 테이블 개체 (클래스 = 'b')를 삽입하는 방법에 대한 질문이 있습니다. 누구든지 내게 아래의 코드에 대한 제안을 줄 수 있습니까? jQuery IE7의 테이블 뒤에 테이블 개체 삽입
// This is the existing table
<table class='a' align="center">
<tr><th><label for="id_S">Number of modeled stages:</label></th><td><select name="S" id="id_S">
<option value="">Please choose</option>
<option value="2">2</option>
<option value="3">3</option>
</select></td></tr>
</table> //I would like to insert a table class='b' right after this </table> tag
<script>
$(document).ready(function() {
$('<table class="b" border="0" align="center"><tr><th width="5">Matrix:</th></tr></table>').appendTo('.a'); //this works in IE8 but not in IE7
})
</script>
// The following code works in IE7, but it messed up the layout
<script>
$(document).ready(function() {
$('<table class="leslie" border="0" align="center"><tr><th width="5">Matrix:</th></tr></table>').appendTo('.a td:last'); //this works in IE7, once I changed it to tr:last, it does not work again.
})
</script>
업데이트 나는 더 간단 케이스를 시도했다. IE7에서 경고 메시지를 볼 수는 있지만 추가 된 테이블 행을 볼 수 없습니다. IE7에서 추가 HTML 표를 보여주지 못했지만 JavaScript 코드를 처리 할 수있는 것 같습니다.
<script>
$('<table class="b" border="0" align="center"><tr><th width="5">Lesile Matrix:</th></tr></table>').appendTo('.a');
alert('s')
</script>
당신은 "테이블"의 클래스와 테이블이 없습니다. 또한 추가하려고하는 테이블에 대한 테이블 끝 태그가 없습니다. 그게 고칠 수 있니? – ovaherenow
@overherenow : 아니요. 문제가 여전히 존재합니다. –
어둠 속에서 촬영 한 것일 수도 있지만 'tbody'태그에 'tr'태그를 넣으십시오. 그러나 나는 그것을 실제적으로 단순하게 만들 것을 제안 할 것이다. 테이블이 추가되었는지 확인하기 위해 속성이없는 테이블을 추가하는 것일 수도 있습니다. 또한 .append는 테이블을 다른 테이블의 자식으로 만들기 때문에 Abraham이 제안한 'insertAfter'를 사용합니다. 그게 네가 원하는지 모르겠다. – ovaherenow