Как показать тип ввода текста после отправки, если флажок установлен - PullRequest
0 голосов
/ 29 июня 2018

Я получил 2 вопроса

1) Итак, ниже приведен код, который будет сохранять флажок пользователя после того, как пользователь отправил форму, чтобы он знал, какой из них он проверял, и не нужно заполнять снова. Но вопрос в том, что он не показывает массив, я думаю, это

echo ($_POST['ao']);

Я попытался использовать print_r, но он показывает весь массив, я просто хочу отобразить определенный элемент, который проверял пользователь. В настоящее время он просто выводит "Array".

2) Теперь он отображает текст типа ввода, если пользователь проверен после отправки. Но перед отправкой он работает.

function ao1Function(){document.getElementById("ao1").value = 
document.getElementById("ao1").disabled = false;
document.getElementById("ao1").style.display = "inline-block";}
function ao1Function2(){document.getElementById("ao1").value = document.getElementById("ao1").style.display = "none";
document.getElementById("ao1").disabled = true;
}
<input type="checkbox" name="cbox[]" value="Basic Add To Cart,0" onclick="if(this.checked){ao1Function()}else{ao1Function2()}" 
    <?php if (isset($_POST['cbox']) && in_array("Basic Add To Cart,0",$_POST['cbox'])){echo 'checked';}?>>
    Basic Add To Cart<div id="ao1" style='display:none;'>&nbsp;&nbsp; 

    <input type="text" id="ao" min="0" step="0.05" name="ao[]" onchange="force2decimals(this)" onkeypress='validate(event)' inputmode='numeric' placeholder="Amount (RM)"
    value="<?php if(isset($_POST['ao'])) echo ($_POST['ao']);?>" <?php if(isset($_POST['cbox'])) echo "style='display:inline-block;'";?>></div>

1 Ответ

0 голосов
/ 29 июня 2018

1) Вот как показать только выбранные флажки

var_dump(array_filter($_POST['ao'], function($v) {return $v == 'true';}));

2) Часть JavaScript выглядит нормально. Возможно, вам понадобится небольшое исправление на стороне PHP, и оно будет отлично работать.

перед:

<?php if(isset($_POST['cbox'])) echo "style='display:inline-block;'";?>

после

<?php if(isset($_POST['cbox'])) echo "style='display:inline-block;'"; else echo "style='display:none;'";?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...