Обновлен HTML из переменной JavaScript

0

im пытается создать форму с несколькими входами типа номера, которые выбирают пользователи, и один флажок. im не используя php, все его java вызывает попытку подсчета счета с использованием его входов и распечатку результата. как напечатать эти переменные? document.write не заставит его неуправляемо печатать var без вычисления.

вот какой-то скрипт (который ничего):

$(document).ready(function(e) {
    $('.content_window').css('height','900');
    $('#top').css('float','none');
    var shutter_price
    shutter_price = ($('#shutter').val())*200;  
    if (shutter != '0' )
        write(shutter_price);   
});

и ввод формы:

<label for="shutter">shutter </label> 
<input style="margin-right:98px" name="shutter" type="number" id="shutter">

какие-либо предложения?

  • 1
    Java! = JavaScript .. также не используйте document.write после того, как DOM был обработан / создан (он записывает буквальный HTML-код в открытый поток документов, который закрывается к тому моменту, когда вызывается ready ). Вместо этого манипулируйте соответствующим DOM.
  • 0
    либо добавьте новое поле на страницу и вставьте туда значение, либо создайте новый элемент и добавьте его на страницу. если вам не нужно печатать на экран, просто используйте console.log(shutter_price) и вы можете увидеть его в консоли (f12).
Показать ещё 1 комментарий
Теги:

4 ответа

1

Вместо document.write было бы лучше обновить или добавить элемент на странице.

Например, изменив предоставленный код и разметку:

Javascript (jQuery)

$(document).ready(function(e) {
    $('.content_window').css('height','900');
    $('#top').css('float','none');

    $('#shutter').on("change", function(e) {
        var shutter_price = $(this).val()*200;
        if (shutter_price >= 0) {
            $('#shutter-result').text(shutter_price);
        }
    });
});

HTML

<label for="shutter">shutter </label>
<input style="margin-right:98px" name="shutter" type="number" id="shutter" min="0" step="1" pattern="\d+" />

<div id="shutter-result"></div>

JSFiddle

0

Я набрал весь расчет. У меня есть кнопка submmision, которая, нажав, должна извлечь сумму. он не работает... im довольно новый в javascript, поэтому я не могу сказать, где проблема. вот код:

$('#home_price').submit(function(){
var shutter_price, lights_price, socket_price, screen10_price, screen7_price, dimmer_price, x
var total_price = 3000;
    shutter_price = ($('#shutter').val())*200;
    light_price = ($('#lights').val())*200;
    socket_price = ($('#socket').val())*200;
    screen10_price = ($('#screen10').val())*700;
screen7_price = ($('#screen7').val())*200;
dimmer_price = ($('#dimmer').val())*400;
if($('#boiler').is(":checked")==true){
    total_price+=600;
    x+=1;
}
x+=($('#shutter').val())*2+($('#lights').val())+($('#socket').val());
Math.floor(x);
x+=1;
total_price = total_price + shutter_price + light_price + socket_price + screen10_price + screen7_price +           dimmer_price + x*400;
$('#home_pricing').val()=total_price;
if($('#home_pricing').val() < 6000)
    alert('the solution invalid');
else
    alert(" total: " + $('#home_pricing').val());
});
});

и часть html-кода:

<label for="screen7"> 7inch screen </label> 
<input style="margin-right:70px" name="screen7" type="number" id="screen7"> <br><br> 
    <label for="dimmer"> dimmer</label> 
    <input style="margin-right:174px" name="dimmer" type="number" id="dimmer"> <br><br> 
    <label for="boiler"> bolier </label>
    <input style="margin-right:148px" type="checkbox" name="boiler" id="boiler" > <br><br> 
    <div>
    <input type="submit" name=" home_pricing " id="home_pricing" value=" calculate " >
    </div>
    </form>

любое предложение о том, как сделать вычисление и получить окно предупреждения или другое окно с ответом?

Тпх

0

Я думаю, вы можете создать div в своем HTML и использовать: $('#id_of_div_where_you_want_to_write').html("text you want to write");

ps Это javascript javascript! = java o/

Надеюсь, это поможет брату!

-1

Я знаю, что вы не сказали, что используете jquery, но я бы очень его возобновил, потому что он делает javascript намного проще. Если вам нужно отобразить это значение для пользователя, вы можете использовать функцию jquery html. Вот ссылка, https://api.jquery.com/html/. Я бы просто записал значение в div, который должен отображать ответ.

Дайте мне знать, если вам это нужно, и я могу дать вам быстрый плункер.

  • 0
    Не проголосовали, но что заставляет вас думать, что пользователь не использует jquery?
  • 0
    $(document).ready(function(e) { - для меня это похоже на jQuery! :)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню