1

我有一个下载按钮,单击它应该更改元素跨度的文本,但我在 ajax 部分有问题

点击后会显示一个小按钮,文本不会改变

这是我的html

//somecode
    <span class="num">Downloaded:<?php echo $downloadcount;?></span>
     </td></tr>
     </table>
     </div>
<button type = "button" class="button" id="<?php echo $id; ?>" name="dl">
    <a href='./mp3/<?php echo basename($filename);?>'>Download</a>
</button>
         </td>
     </tr>
    </table>

这是我的ajax:

    $(function() {
        $(".button").click(function() 
        {
        var id = $(this).attr("id");
        var name = $(this).attr("name");
        var dataString = 'id='+ id ;
        var parent = $(this);
        if(name=='dl')
        {
        $(this).fadeIn(200).html('<img src="dot.gif" align="absmiddle">');
        $.ajax({
           type: "POST",
           url: "download_number.php",
           data: dataString,
           cache: false,

           success: function(html)
           {
//THE PROBLEM IS HERE
            $(".num").text(html);

          }  });

        }
        });
        });

我也试过$(".num").html(html);

4

2 回答 2

2

你不应该在<a>里面放一个<button>- 链接将战胜按钮动作[见小提琴]。

除此之外,您的代码似乎是正确的。

于 2012-10-12T18:53:25.283 回答
0

将数据字符串更改为此

var dataString = "{'id'="+ id+"}" ;  

并添加datatpe json ...这样做可能会起作用....只是猜测

datatype:'json', 
  success: function(html)
               {
               alert(html);
               // First see...what u r getting in response and then move forward

              } 
于 2012-10-12T18:52:11.467 回答