我正在抓取一个网页,并且我需要访问的div有id="#abc"
。
我正在用cheerio抓取页面,因此我需要在JQuery中执行此操作,但是它不起作用:
$('##abc') // undefined
但是它可以与纯JavaScript一起使用:
getElementById("#abc") // works well
答案 0 :(得分:3)
尝试通过转义带有ID的任何特殊字符来使用此$('#\\#abc')
。
$(function()
{
var a = document.getElementById("#abc")
var b = $('#\\#abc')
$(b).val("test")
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="#abc" />
答案 1 :(得分:1)
您可以尝试输入(隐藏,文本..)
$("[id='#abc']").val()
@Scott Marcus建议
对于所有非形式字段元素:
$("[id='#abc']").html()
$("[id='#abc']").text()
答案 2 :(得分:1)
尝试一下:
$('[id="#abc"]');