在jQuery中隐藏一些未来的元素


hide some future elements in jquery

我试图在加载时隐藏段落

<script>
$(document).ready(function()
{
$.ajax({
    url:"http://localhost/test.php",
    success:function(data){
            $('#div').html(data);}
});
$('#btn').click(function(){
    $('#para').hide();
})

</script>
<html>
<div id="div"> </div>
<input type="button" value="hide" id="btn">
</html>

.PHP

<?php
echo"<p id='para'> this is test </p>"
?>

我正在尝试的是对客户端的未来元素执行操作,但我无法做到这一点......任何帮助.... ????

您应该创建一个 CSS 规则,该规则将添加到任何具有 display:none 的新元素中。

这样,任何新元素都将自动强制执行 CSS 规则。一旦你想显示该元素,只需删除该CSS类。

echo "<p id='para' class='hide'> this is test </p>"
// here is the class------^

现在在你的CSS文件中,你可以有这个:

.hide {
  display: none;
}

若要删除类并使段落可见,请使用以下命令:

$( "#para" ).removeClass( "hide" );

你也可以通过jQuery添加这个类:

...
success:function( data ) {
  var element = $( data ); // assuming data is just raw HMTL
  element.addClass( "hide" );
  $( "#div" ).html( element.html() );
}
...

您可以尝试在单击#btn时设置标志,然后在设置标志时隐藏有关 AJAX 成功的段落。