禁用选项将无法正常工作

时间:2015-11-30 13:45:34

标签: javascript php jquery sql ajax

在我的情况下,我试图检查是否可以执行3个不同的查询。

根据true或false(if / else),应运行jQuery脚本以启用或禁用<option>标记。

我的问题是,无论何时运行此代码,都会禁用所有<option>标记,或者全部启用它们。

disable_options.php

if (isset($_POST['first_field_selected'])) {
    $selected = $_POST['first_field_selected'];
    $output;
    // define unisolierte Systeme mit Einfachglas
    if($result = $db->query("SELECT * FROM produkte WHERE $selected = 1 AND `unisolierte Systeme mit Einfachglas` = 1")) {
        $output .= '<script>$("#PG_Select_Bereich1 option[value=\'unisolierte Systeme mit Einfachglas\']").prop("disabled", false)</script>';
    }
    else { 
        $output .= '<script>$("#PG_Select_Bereich1 option[value=\'unisolierte Systeme mit Einfachglas\']").prop("disabled", true)</script>';
    }

    // define unisolierte Systeme mit Isolierglas
    if($result = $db->query("SELECT * FROM produkte WHERE $selected = 1 AND `unisolierte Systeme mit Isolierglas` = 1")) {
        $output .= '<script>$("#PG_Select_Bereich1 option[value=\'unisolierte Systeme mit Isolierglas\']").prop("disabled", false)</script>';
    }
    else { 
        $output .= '<script>$("#PG_Select_Bereich1 option[value=\'unisolierte Systeme mit Isolierglas\']").prop("disabled", true)</script>';
    }

    // define isolierte Systeme bis Dreifachglas
    if($result = $db->query("SELECT * FROM produkte WHERE $selected = 1 AND `isolierte Systeme bis Dreifachglas` = 1")) {
        $output .= '<script>$("#PG_Select_Bereich1 option[value=\'isolierte Systeme bis Dreifachglas\']").prop("disabled", false)</script>';
    }
    else { 
        $output .= '<script>$("#PG_Select_Bereich1 option[value=\'isolierte Systeme bis Dreifachglas\']").prop("disabled", true)</script>';
    }
    echo $output;
}

的index.html

<div class="first_script"></div>

的script.js

$.ajax({
     url : "typo3conf/ext/produkteguide_sg/pi1/disable_options.php",
     type: "POST",
     data : { first_field_selected: this.value },
     success: function(data, textStatus, jqXHR)
     {
          $(".first_script").html(data);
     },
     error: function (jqXHR, textStatus, errorThrown)
     {
         alert(errorThrown);
     }
});

如果您想拍一张照片,请转到this page并选择“Fassade的Einbau”。您将看到在下一个选择字段中禁用所有选项。在phpMyAdmin中,“Fassade中的Einbau”(选择为$)设置为1,如下图所示。

enter image description here

0 个答案:

没有答案