Обтекание div внутри условия if - PullRequest
0 голосов
/ 06 июля 2018

Итак, у меня есть следующий элемент div, и я хочу показать его, только если тип элемента равен «Мобильный телефон» или «Планшет», выбранный на той же странице с помощью поля со списком (также вход, но вместо записи это выпадающий список), но я просто не могу понять, как обернуть этот div внутри условия if на основе того, что выбрано в поле со списком, кто-нибудь может мне помочь? Что-то вроде этого: if item = "MobilePhone" или item = "Tablet" --------> Показать div

Но у меня уже есть Php-код внутри div .., поэтому я просто не могу это сделать

<div class="control-group <?php echo !empty($imeiError)?'error':'';?>">
                    <label class="control-label"><strong>IMEI</strong></label>
                    <div class="controls">
                        <input name="imei" type="text"  placeholder="IMEI" value="<?php echo !empty($imei)?$imei:'';?>">
                        <?php if (!empty($imeiError)): ?>
                            <span class="help-inline"><?php echo $imeiError;?></span>
                        <?php endif;?>
                    </div>
                 </div>

И вот как я выбираю желаемый вход

<div class="control-group <?php echo !empty($itemError)?'error':'';?>">
<label class="control-label"><strong>Item</strong></label>
<div class="controls">
    <select name="item">
        <option value="MobilePhone" <?php echo !empty($item) && $item == 'MobilePhone' ? 'selected' : ''; ?>>MobilePhone</option>
        <option value="Tablet" <?php echo !empty($item) && $item == 'Tablet' ? 'selected' : ''; ?>>Tablet</option>
        <option value="Computer" <?php echo !empty($item) && $item == 'Computer' ? 'selected' : ''; ?>>Computer</option>
        <option value="HeadPhones" <?php echo !empty($item) && $item == 'HeadPhones' ? 'selected' : ''; ?>>HeadPhones</option>
    </select>
</div>

Ответы [ 3 ]

0 голосов
/ 06 июля 2018

Вы можете использовать переменную $html для организации html в if состоянии, как показано ниже.

 <?php 
    $item = "MobilePhone";
$html = "";
if ($item == "MobilePhone" || $item == "Tablet") {
$html .= '<div class="control-group';
        echo !empty($imeiError)?'error':'';
$html .= '<label class="control-label"><strong>IMEI</strong></label><div class="controls">
        <input name="imei" type="text"  placeholder="IMEI" value="'.!empty($imei)?$imei:''; '">';
      if (!empty($imeiError)): 
$html .= '<span class="help-inline">';
        echo $imeiError;
$html .= '</span>';
        endif;
$html .='</div></div>';
}
?>
0 голосов
/ 06 июля 2018

Вы уже, кажется, проверяете на $item во втором коде, поэтому, предполагая, что $item установлен, вы можете использовать этот код для отображения div, только если выбрано "MobilePhone" или "Планшет":

<?php if ($item == "MobilePhone" || $item == "Tablet") : ?>

<div class="control-group <?php echo !empty($imeiError)?'error':'';?>">
    <label class="control-label"><strong>IMEI</strong></label>
    <div class="controls">
        <input name="imei" type="text"  placeholder="IMEI" value="<?php echo !empty($imei)?$imei:'';?>">
        <?php if (!empty($imeiError)): ?>
            <span class="help-inline"><?php echo $imeiError;?></span>
        <?php endif;?>
    </div>
</div>

<?php endif ?>
0 голосов
/ 06 июля 2018

Если ваш div имеет display:none в вашем CSS.

Используйте выбранные onchange="myFunc()"

А в вашем myFunc() ищите выбранное значение и делайте что хотите. document.getElementById('yourDivId').style='display:block' устанавливает видимость вашего div.

<select onchange="myFunction()" id="select"><!--selections with different values --></select>
<script> function myFunction() {
    var selected=document.getElementById("select").value;
  if(selected=="Mobile")
       document.getElementById("yourDivId").style="display:block";    }
</script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...