Ответы пользователя по тегу HTML
  • Как задать диву два цвета(градиент)?

    @2bllk
    Вертикально:
    background: linear-gradient(red 50%, green 50%);
    Горизонтально:
    background: linear-gradient(to right, red 50%, green 0px);
    Ответ написан
    Комментировать
  • Изменение html в зависимости от radio?

    @2bllk
    Почему бы Вам этим на сервере не заниматься?
    <form target="_blank" method="POST" action="../index.php">
        <input type="radio" name="paymentType" value="PC">
        <input type="radio" name="paymentType" value="AC">
        <input type="radio" name="paymentType" value="MC">
    </form>

    index.php
    if (isset($_POST['paymentType'])){
        if ($_POST['paymentType'] === 'PC')
            header('Location: ../page/sds/3')
            // ...
    }


    это все понятно но мне нужно изменить форму до её отправки!!!
    Тоесть в зависимости от выбранного radio форма будет уходить на другой сайт


    Второй вариант:
    <html>
    <head>
    	<title>Document</title>
    </head>
    <body>
    	<form target="_blank" method="POST" action="../index.php" name="form">
    	    <input type="radio" name="paymentType" value="PC">
    	    <input type="radio" name="paymentType" value="AC">
    	    <input type="radio" name="paymentType" value="MC">
    	</form>
    
    	<script type="text/javascript">
    		document.form.onchange = () => {
    			switch ((new FormData(document.form)).get('paymentType')){
    				case 'PC':
    					document.form.action = '/page/sds/3';
    				break;
    				case 'AC':
    					document.form.action = '/page/sds/4';
    				break;
    				case 'MC':
    					document.form.action = '/page/sds/5';
    				break;
    			}
    		}
    	</script>
    </body>
    </html>
    Ответ написан
    9 комментариев
  • Как сделать картинку не скачиваемой?

    @2bllk
    Просто картинка там представляет собой не тег img, а элемент с бэкграундом, заданным картинкой. Но скачать эту картинку можно. На скриншоте я выделил ссылку5db5777ed936c313482082.png
    Ответ написан
    1 комментарий
  • Возможно ли передать данные из одного файла в другой файл через JavaScript?

    @2bllk
    Я не буду спрашивать, зачем вам это. Просто расскажу, как я придумал это сделать.
    Файл "a.html":
    <html>
    <head>
    	<title>Document</title>
    </head>
    <body>
    	<form action="b.html" method="GET">
    		<input type="text" name="variable1">
    		<input type="text" name="variable2">
    		<input type="submit">
    	</form>
    </body>
    </html>

    В форме указываем, что будет использоваться метод GET (почитайте в интернетах, если не знаете, что это такое и как это работает). Методом GET значения передаются прямиком в ссылке (ссылка вида "example.com?var1=Hello&var2=World", где жирным выделено название переменной, а курсивом — ее значение). НО! GET имеет ограничение в длине передаваемых данных (об этом тоже почитайте в интернетах), имейте это в виду.
    У элементов input есть параметр name. Он содержит имя переменной, отправляемой в GET запросе, а ее значение автоматически берется из того, что вы ввели в input.
    Так-с, при отправке формы у нас откроется страница b.html
    <html>
    <head>
    	<title>Document</title>
    </head>
    <body>
    	<script type="text/javascript">
    		function getGETParameters(paramStr){
    			return Object.fromEntries(paramStr.split('&').map(e => decodeURI(e).split('=')));
    		}
    		console.log(getGETParameters(window.location.search.substr(1)));
    	</script>
    </body>
    </html>

    Когда она откроется, посмотрите на строку поиска/адреса, там вы увидите, как примерно выглядит GET-запрос. Потом загляните в консоль и увидите, что там отображается массив (или объект). Я думаю, вы поймете, для чего он нужен.

    Немного изменим файл b.html
    <html>
    <head>
      <title>Document</title>
    </head>
    <body>
      <script type="text/javascript">
        function getGETParameters(paramStr){
          return Object.fromEntries(paramStr.split('&').map(e => decodeURI(e).split('=')));
        }
        let variables = getGETParameters(window.location.search.substr(1));
        console.log(variables["variable1"]); // эта строка выведет в консоль то, что Вы вводили в первый input
      </script>
    </body>
    </html>
    Ответ написан
    4 комментария