我正在尝试让我的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>
答案 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();
将为您提供包含在
<a href="...">...</a>
个标签。在您的情况下,它会读取Clip1234
您想要阅读href
属性。
var url = this.href; //Plain old Javascript, not jQuery