Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Помогите переделать под JS (очень надо) (https://javascript.ru/forum/dom-window/48465-pomogite-peredelat-pod-js-ochen-nado.html)

Alfer 05.07.2014 00:35

Помогите переделать под JS (очень надо)
 
есть поля ввода:

<ul>
    <li>
        <label>Width</label>
        <input type="text" name="width" id="widh_text_one" class="size_text" ></span>
    </li>
    <li>
        <label>Height</label>
        <input type="text" name="height" id="height_text_two" class="size_text" ></span>
    </li>
    <li>
        <label>Results</label>
        <input type="text" name="results" class="size_text_" value="<?php echo $pieces; ?>"></span>
    </li>
</ul>


есть пхп код:

<?php
$pieces = "N/A";
if (!empty($_POST['height']) && !empty($_POST['width'])) {
    $height = $_POST['height'];
    $width = $_POST['width'];
    if ($height >= 900 && $height <= 1100 && $width >= 800 && $width <= 1000){
        $pieces = 53;
    } elseif ($height >= 500 && $width >= 600) {
        $pieces = 52;
    }
}?>


когда в поля с шириной и высотой вводят данные, то скрипт проверяет значения и выдает в переменную pieces значение, т.е. каждому диапазону соответствует свое значение - но мне сказали что лучше на JS сделать чтоб страницу не перегружать, помогите переделать на JS - спасибо

Zuenf 05.07.2014 01:16

<ul>
    <li>
        <label>Width</label>
        <input type="text" name="width" id="widh_text_one" class="size_text" ></span>
    </li>
    <li>
        <label>Height</label>
        <input type="text" name="height" id="height_text_two" class="size_text" ></span>
    </li>
    <li>
        <label>Results</label>
        <input type="text" name="results" id="result" class="size_text_" value=""></span>
    </li>
</ul>
<script>
var heightInput = document.getElementById('height_text_two'),
    widthInput = document.getElementById('widh_text_one');
function consider(){
var height = parseInt(heightInput.value),
     width = parseInt(widthInput.value),
     pieces = 'N/A';
if (height && width) {
    if (height >= 900 && height <= 1100 && width >= 800 && width <= 1000){
        pieces = 53;
    } else if (height >= 500 && width >= 600) {
        pieces = 52;
    }
document.getElementById('result').value = pieces;
}
}
widthInput.onkeyup = heightInput.onkeyup = consider;
</script>

Alfer 05.07.2014 01:20

круто, а без кнопочки Посчитать можно сделать тоже самое?

Zuenf огромное спасибо Вам!

Zuenf 05.07.2014 01:36

Посмотри, изменил пример. Код лучше вынести отдельным файлом, да и события сделать через кроссбраузерный addEventListener. А так на первое время хватит.


Часовой пояс GMT +3, время: 23:45.