我是JQUERY和Jscript的新手,我必须做一件简单的事情,我确信解决方案很简单,但我所有的搜索都没有,我很乐意得到帮助。
我需要的是通过单击特定行从数组列表中获取特定值。
例如,在此代码中,有一些"人员"我希望当用户点击特定行时,var" myValue"将得到相应的值。它是做多项选择的。
例如,如果用户点击" Moshe"价值将是=" Moshe",或者如果他点击" Izhak"该值将分配给" Izhak"等等。
请帮助,提前致谢。 HTML:
<!DOCTYPE html>
<!-- My question -->
<html>
<head>
<meta charset="windows-1255">
<title>Draft2</title>
<script src="js/jquery-1.11.3.min.js"></script>
</head>
<body>
<h1>Hi</h1>
<div id = "test"></div>
function myFunction(){
window.alert("function");
}
var people=["Avraham","Izhak","Yaakov","moshe","aaron", "Yosef","david"];
var length = people.length;
function displayPeople(){
for( i=0; i <length; "+people[i]);
}
}
displayPeople();
//trying to get the specific value by clicking
$("#test").click(function(){
var myValue = $("#test").text();
window.alert(myValue);
});
//$(document).ready(function(){ // displayPeople()});
答案 0 :(得分:0)
如果我做对了,你的代码有两个不同的问题:
要实现第一个目标,您可以迭代数组并将每个项目附加到根html标记。
要实现第二个目标,您应该将“click”事件绑定到您感兴趣的DOM元素。
示例:
<table id="myTable">
</table>
<script>
var people=["Avraham","Izhak","Yaakov","moshe","aaron", "Yosef","david"];
var length = people.length;
function displayPeople(){
for(i in people)
$("#myTable").append('<tr><td data-people-id="'+i+'">Hi '+people[i]+'</td></tr>');
}
displayPeople();
// get the specific value by clicking
$("#myTable").on("click","tr td",(function(){
var myValue = $(this).data("people-id");
window.alert(people[myValue]);
}));
</script>
JS小提琴演示:https://jsfiddle.net/ogoqnurr/