java - 从 IE7/8 发布后下拉列表的值显示为数组,但在 Firefox 中使用 PHP、HTML、JAVA(DHTMLSUITE 模态消息)显示正常值

标签 java php html

我正在双for循环中生成一个下拉菜单(for循环内的for循环)

当我用 IE7/8 发布相同的内容时,我得到的值是一个数组(array { [0] = 11_31_2}),但在 Firefox 中我得到的值是 11_31_2。

下面是我使用的以下代码

for ($k=1;$k<=strlen($weeklist);$k++) {
    if ($presentweek == 1) {
        $k = 0;
    }
    if (substr($weeklist,$k-1,1) == 1 || $presentweek == 1) {
        if ($presentweek == 1) {
            $presentweek++;
        }
        $selectedweekstarttime = $starttime + (60*60*24*7*$k);
        $selectedweekendtime = $selectedweekstarttime + (60*60*24*6);
        foreach ($meterreadergroup as $meterreader_id) {
            $readerid_selected = $readerselect == "" ? $meterreader_id : $readerselect;
            $has_rule = getPlanningRuleOfTheWeek ($readerid_selected,$selectedweekstarttime);
            $has_freeweek = getFreeTimeOfTheWeek ($readerid_selected,$selectedweekstarttime);
            if ($has_rule != "" || $has_freeweek != "") {
                if (stripos($problemweek,$getweeks[$k]) === false) {
                    $problemweek = $problemweek.$getweeks[$k].";";
                }
                $filldetails = "";
                if (is_array($has_rule)) {
                    $filldetails .= "Has Planningrules<br />";
                }
                if (is_array($has_freeweek)) {
                    $filldetails .= "Has freeweek/day";
                }
                $selectdetails = "";
                print "getweeks - ".$getweeks[$k]."<br>";
                $selectdetails .= "<select errorcheck='checkoptions' name='".$readerid_selected."_".$getweeks[$k]."' onchange='clearErrorFields(this,".$x.");'>
                <option value='".$readerid_selected."_".$getweeks[$k]."_0'>Choose Solution</option>
                <option value='".$readerid_selected."_".$getweeks[$k]."_1'>Leave this week for this meterreader out when copying</option>
                <option value='".$readerid_selected."_".$getweeks[$k]."_2'>Leave this entire week out when copying</option>
                <option value='".$readerid_selected."_".$getweeks[$k]."_3'>Remove current rules for meterreader and force new rules</option>
                </select>";
                $row_details[] = array($getweeks[$k],fetchMeterreaderDetails("vnaam,tv,anaam",$readerid_selected),$filldetails,$selectdetails,"<div id='error".$x."' ></div>");
                $x++;
            }
        }
    }
}

例如

name='".$readerid_selected."_".$getweeks[$k]."' 示例名称='11_31'

value='".$readerid_selected."_".$getweeks[$k]."_0' 值='11_31_2'

所以当我 $_REQUEST['11_31'] 时我期望值为 11_31_2 我只得到我在 Firefox 中期望的值, 但对于 IE7/8 中的我来说,我得到的值是 array{ [0] = 11_31_2}

最佳答案

这是在黑暗中进行的尝试,但 IE 可能因非标准的“errorcheck='checkoptions'”属性而窒息。我这样说是因为您报告的行为(将选择作为数组)是您期望从