我有一个类似于仪表板的窗口。在该仪表板内部,我有一个iframe,它充当消息中心,用于向系统中的用户发送电子邮件。
我要做什么:
一个下拉框,单击该下拉框后,会将电子邮件的收件人添加到文本字段中。
我当前的代码:
messages.js中的函数,用于向用户输出电子邮件作为测试
<option>
php,它在<select>
标签中构建function userDropDown() {
$dbConn = getConnection();
$sqlRequestUserList = "SELECT * FROM academy_user";
$user_list = $dbConn->query($sqlRequestUserList);
foreach ($user_list as $value) {
printf('<option onClick="mountRecipient(\'%s\');">%s %s: %s</option>', $value['user_email'], $value['f_name'], $value['l_name'], $value['user_email']);
}
}
标签。这是在iframe中,其中包含用于发送电子邮件的表单
mountRecipient(test)
由于某种原因,当单击下拉项时,不会发生onclick事件。如果我在Chrome控制台中输入app.put()
,那么我将从脚本中返回“测试”。
为什么onclick事件不触发?
(我试图格式化代码,但无法正常工作,抱歉)
答案 0 :(得分:2)
这会将一个更改事件侦听器添加到添加了选项的选择中(您将需要使用/提供选择一个类,并将我代码中的 select 替换为您的类)。因此,当用户选择任何选项时,它将触发此事件。然后,在函数本身中,它只需将所选值发送到您的函数中即可。
document.getElementsByClassName('select')[0].addEventListener("change", function() {
mountRecipient(this.children[this.selectedIndex].value);
});
答案 1 :(得分:0)
添加父母。如果在同一个域中!
onClick="parent.mountRecipient(\'%s\');"
在选择中使用onClick