我试图访问一个元素的id,然后切掉num来拼凑一个用于ajax调用的url。我主要使用JQuery。
我已经尝试过.attr()和.data(),发现它们只返回第一个匹配,因此无论是否点击1,4或54,它每次都会返回1。
.get()只返回HTML标头对象,我还没有找到一种方法来访问它并可能拉出一个id号。
代码:
<div class="container">
<h3 id="title">I made the Kessel Run in 12 parsecs.</h3>
<form id ="searchParams" method="POST">
Now, I want to know about the
<input list="cats" name="cats">
<datalist id="cats">
<option id="people" value="people"></option>
<option id="planets" value="planets"></option>
<option id="films" value="films"></option>
<option id="species" value="species"></option>
<option id="vehicles" value="vehicles"></option>
<option id="starships" value="starships"></option>
</datalist>
in Star Wars.
<input id="getInfo" type="submit">
</form>
<div class="display"></div>
</div>
<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<script type="text/javascript" src="js/twelveparsecs.js"></script>
</body>
</html>
&#13;
conn.setRequestProperty("User-Agent","Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Mobile Safari/537.36");
&#13;
谢谢!
答案 0 :(得分:1)
你的javascript无法正确使用html片段,它从第2行的失败开始
let $parent = $('h4').parent();
// never matches on your code, you have no h4 tag
let $cat = $parent.attr('class');
// attr is no function of undefined, null pointer exception
id的方式就是这个;
<div id="test">
<script>
console.log($('div').attr('id'));
</script>
如果一个标签被给出超过1次,你将在节点上用$('div')选择器返回一个JQuery对象匹配数组:
<div id="1">a</div>
<div id="2">b</div>
<script>
let listOfElements = $('div');
for(var i = 0; i < listOfElements.length; i++) {
var singleElementInList = $(listOfElements[i]);
var id = singleElementInList.attr('id');
console.log(id);
}
</script>
get命令是一个ajax调用,用于快速读取url的响应