php中当前选定的组合框

php中当前选定的组合框,php,javascript,mysql,Php,Javascript,Mysql,我有一个与javascript相关的问题。我有一个表单,加载时会生成多个组合框: <select id="email_adrs" class="input-medium"> <option>-Ontvanger-</option> <?php while ($veri = mysql_fetch_array($verwijzer)) { ?> <option value="<?php echo $veri['email'];?&g

我有一个与javascript相关的问题。我有一个表单,加载时会生成多个组合框:

<select id="email_adrs" class="input-medium">
<option>-Ontvanger-</option>
<?php while ($veri = mysql_fetch_array($verwijzer)) { ?>
   <option value="<?php echo $veri['email'];?>"><?php echo $veri['aanvrager']; ?></option>
<?php 
   }
?>
</select>
我面临的问题是,如果我将自己限制在生成的第一条记录内,则会发送电子邮件。如果我选择任何其他记录及其对应的组合框,我会收到邮件已发送的通知,但是在进行故障排除时,我发现电子邮件地址没有传递任何值。在我看来,代码无法检测选择了哪个组合框

请帮忙

问候,


Babu

您应该将输入更改为

<input onclick="sendmail(this, '<?php echo $plist['patient_id']; ?>');" class="submit-green" type="submit" value="Versturen"   name="form_submit" />
(1) :根据您的布局,您必须根据需要应用尽可能多的
.parentElement
才能到达表单。
(2) :如果有多个
select
元素,请使用数组的相应索引

如果您使用的是JQuery,那么您可以对

var email = $(clickedElement).closest("form").find("#email_adrs").val();

我们可以看看生成的HTML的源代码吗?您是否有多个具有相同id的“select”呢?那就是问题所在,你总是第一个得到。若有,;在这种情况下,不要使用id,相对于单击的输入遍历DOM(您还需要将其传递给函数)在
sendmail
中打印电子邮件的值。写出来的值正确吗?谢谢你的回复@罗德里戈:你能给我举个例子说明怎么做吗?
<input onclick="sendmail(this, '<?php echo $plist['patient_id']; ?>');" class="submit-green" type="submit" value="Versturen"   name="form_submit" />
function sendmail(clickedElement, pid)
{
    var formElem = clickedElement.parentElement; // (1)
    var selectElem = formElem.getElementsByTagName("select")[0]; // (2)
    var email = selectElem.value;

    /*
      [Ajax call here]
    */
}
var email = $(clickedElement).closest("form").find("#email_adrs").val();