1

以下是我的代码,我在页​​面上创建了一个带有下拉框的 div,并且我希望在 select 中的元素上有一个 onClick 事件:

$("div.projectTeamTools").html('Organize by Project Teams: <select id="projectTeams"><c:forEach var="projectTeam" items="${userProjectTeams}"><option value="${projectTeam.projectId}" onClick="javascript:onTeamSelect(this.value)">${projectTeam.projectName}</option></c:forEach></select>');

function onTeamSelect(teamId){
        alert(teamId +" Selected");
}

该代码在 Firefox 上运行良好,但在 IE 或 Chrome 上运行良好。任何人都可以请帮助!

4

3 回答 3

1

尝试这个:

$("div.projectTeamTools").html('Organize by Project Teams: <select id="projectTeams"><c:forEach var="projectTeam" items="${userProjectTeams}"><option value="${projectTeam.projectId}" >${projectTeam.projectName}</option></c:forEach></select>');


    $("#projectTeams").change(function () {
        onTeamSelect($(this).val());
    });

function onTeamSelect(teamId){
        alert(teamId +" Selected");
}
于 2012-05-11T10:11:57.993 回答
0

选项元素对事件的支持非常差,例如onclick.

这是基于 WebKit 的浏览器中的一个已知问题

您需要在元素上使用onchange事件。<select>

例如:

<select id="projectTeams" onchange="onTeamSelect(this.options[this.selectedIndex].value)">
于 2012-05-11T09:24:39.067 回答
0

可能是您的 javascript 在 chrome/IE 中被禁用 这可用于在 chrome 中启用 javascript 转到开始->运行并输入以下“C:\Documents and Settings\%username%\Local Settings\Application Data\Google\Chrome\应用程序\chrome"-启用-javascript

于 2012-05-11T10:15:30.373 回答