JQuery Pull

时间:2012-04-25 16:04:51

标签: jquery html

我正在尝试让我的jQuery脚本从点击的链接中提取网址,然后将其插入我的视频标记中。有什么建议吗?

我试过拼接我从.html()得到的东西,但引号总是搞砸了。

<div class="binShadow">
        <div class="bin">       
            <table id="tableBin" border="0">
                <tr>
                    <th>name</th>
                    <th>description</th>
                    <th>location</th>
                    <th>duration</th>
                </tr>
                <tbody>
                    <tr>
                        <td><a href='clip1234.mov'>Clip1234</a></td>
                        <td>dolor sit amet, consectetur adipiscing elit</td>
                        <td>dr101</td>
                        <td>:60</td>
                    </tr>
                    <tr>
                        <td><a href="clip456.mov">Clip456</a></td>
                        <td>Lorem ipsum dolor sit amet</td>
                        <td>dr101</td>
                        <td>:60</td>
                    </tr>
                </tbody>
                </div>
            </table>
        </div>
    </div>  
</div>
<script>
    $("#tableBin").click(function () {
            var url = $(this).html(); //Not even close to working
            var overlay = jQuery('<div class="boxWrapper"><div class="box"><video src="'+url+'"</div></div>');

            overlay.appendTo(document.body);
    });
</script>

3 个答案:

答案 0 :(得分:4)

您可以直接从点击的上下文中提取href

$("#tableBin").on("click", "a", function(e){
  e.preventDefault();
  url = this.href;
});

答案 1 :(得分:2)

这里你去:

$("#tableBin a").on("click", function(e) {
 e.preventDefault();
 var url = $(this).attr("href");
 var overlay = jQuery('<div class="boxWrapper"><div class="box"><video src="'+url+'"</div></div>');

 overlay.appendTo(document.body);
});

答案 2 :(得分:0)

var url = $(this).html();将为您提供包含在

中的html的字符串

<a href="...">...</a>个标签。在您的情况下,它会读取Clip1234

之类的内容

您想要阅读href属性。

var url = this.href; //Plain old Javascript, not jQuery