Div html代码不从html代码中提取

时间:2012-07-19 11:59:57

标签: jquery html ajax

java脚本代码

 $("#category select").change(function(){
 var category = $('select option:selected').html();

 $.ajax({
    type:"Post",
    url:"collectiepost.php",
    data:"category="+category,
    cache:"false",
    success:function(html){

 $("select").html($(html).find("option.category"));
 $("#test").html($(html).find("#testdata"));
    }
    });
  });
 }); 

该页面上的html输出collectiepost.php

 <select id="ontwerper">
 <option class="desinger">vikas</option>
 </select>

 <select id="category">
 <option class="category">cloth1</option>
 <option class="category">cloth2</option>
 </select>

 <div id="testdata">test data</div>

需要输出

<select>
<option class="category">cloth1</option>
<option class="category">cloth2</option>
</select>

 <div id="test">
 <div id="testdata">test data</div>   
 </div>

问题

但是我得到那些没有div标签的输出

<select>
<option class="category">cloth1</option>
<option class="category">cloth2</option>
</select>

2 个答案:

答案 0 :(得分:0)

删除以下行中“div #test”中的空格:

$("div #test").html($(html).find("div #testdata"));

答案 1 :(得分:0)

我认为你可以得到这个:

<div id="test">
 <div id="testdata">test data</div>   
</div>

是因为在你的html输出中你没有“test”div:

<select id="ontwerper">
 <option class="desinger">vikas</option>
 </select>

 <select id="category">
 <option class="category">cloth1</option>
 <option class="category">cloth2</option>
 </select>

 <div id="testdata">test data</div>
No test div here

$("div #test").html($(html).find("div #testdata"));失败

包裹它:

$('#testdata').wrap('<div id="test" />');