Dexter  Goodwin

Dexter Goodwin

1617784320

Vuetify — Inputs and Overflow Buttons

Vuetify is a popular UI framework for Vue apps.

In this article, we’ll look at how to work with the Vuetify framework.

Input Events

Inputs can listen to various click events for the icons.

For example, we can write:

<template>
  <v-container>
    <v-row>
      <v-col col="12">
        <v-input
          :messages="['Messages']"
          append-icon="mdi-plus"
          prepend-icon="mdi-minus"
          @click:append="appendIconCallback"
          @click:prepend="prependIconCallback"
        >Default Slot</v-input>
      </v-col>
    </v-row>
  </v-container>
</template>
<script>

#technology #javascript #web-development #software-development #programming

What is GEEK

Buddha Community

Vuetify — Inputs and Overflow Buttons

I am Developer

1597489568

Dynamically Add/Remove Multiple input Fields and Submit to DB with jQuery and Laravel

In this post, i will show you how to dynamically add/remove multiple input fields and submit to database with jquery in php laravel framework. As well as, i will show you how to add/remove multiple input fields and submit to database with validation in laravel.

dynamically add remove multiple input fields and submit to database with jquery and laravel app will looks like, you can see in the following picture:

add/remove multiple input fields dynamically with jquery laravel

Laravel - Add/Remove Multiple Input Fields Using jQuery, javaScript

Follow the below given easy step to create dynamically add or remove multiple input fields and submit to database with jquery in php laravel

  • Step 1: Install Laravel App
  • Step 2: Add Database Details
  • Step 3: Create Migration & Model
  • Step 4: Add Routes
  • Step 5: Create Controller by Artisan
  • Step 6: Create Blade View
  • Step 7: Run Development Server

https://www.tutsmake.com/add-remove-multiple-input-fields-in-laravel-using-jquery/

#laravel - dynamically add or remove input fields using jquery #dynamically add / remove multiple input fields in laravel 7 using jquery ajax #add/remove multiple input fields dynamically with jquery laravel #dynamically add multiple input fields and submit to database with jquery and laravel #add remove input fields dynamically with jquery and submit to database #sql

Upload, Preview & Download Images using JavaScript & PHP

In this guide, you’ll learn how to Upload, Preview & Download Images using JavaScript & PHP.

To create Upload, Preview & Download Images using JavaScript & PHP. First, you need to create two Files one PHP File and another one is CSS File.

1: First, create a PHP file with the name of index.php

 

<?php
//if download button clicked
if(isset($_POST['downloadBtn'])){
    //getting the user img url from input field
    $imgURL = $_POST['file']; //storing in variable
    $regPattern = '/\.(jpe?g|png|gif|bmp)$/i'; //pattern to validataing img extension
    if(preg_match($regPattern, $imgURL)){ //if pattern matched to user img url
        $initCURL = curl_init($imgURL); //intializing curl
        curl_setopt($initCURL, CURLOPT_RETURNTRANSFER, true);
        $downloadImgLink = curl_exec($initCURL); //executing curl
        curl_close($initCURL); //closing curl
        // now we convert the base 64 format to jpg to download
        header('Content-type: image/jpg'); //in which extension you want to save img
        header('Content-Disposition: attachment;filename="image.jpg"'); //in which name you want to save img
        echo $downloadImgLink;
    }
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Image Download in PHP | Codequs</title>
    <link rel="stylesheet" href="style.css">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css"/>
    <script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
</head>
<body>
    <div class="wrapper">
        <div class="preview-box">
            <div class="cancel-icon"><i class="fas fa-times"></i></div>
            <div class="img-preview"></div>
            <div class="content">
                <div class="img-icon"><i class="far fa-image"></i></div>
                <div class="text">Paste the image url below, <br/>to see a preview or download!</div>
            </div>
        </div>
        <form action="index.php" method="POST" class="input-data">
            <input id="field" type="text" name="file" placeholder="Paste the image url to download..." autocomplete="off">
            <input id="button" name="downloadBtn" type="submit" value="Download">
        </form>
    </div>
    <script>
        $(document).ready(function(){
            //if user focus out from the input field
            $("#field").on("focusout", function(){
                //getting user entered img URL
                var imgURL = $("#field").val();
                if(imgURL != ""){ //if input field isn't blank
                    var regPattern = /\.(jpe?g|png|gif|bmp)$/i; //pattern to validataing img extension
                    if(regPattern.test(imgURL)){ //if pattern matched to image url
                        var imgTag = '<img src="'+ imgURL +'" alt="">'; //creating a new img tag to show img
                        $(".img-preview").append(imgTag); //appending img tag with user entered img url
                        // adding new class which i've created in css
                        $(".preview-box").addClass("imgActive");
                        $("#button").addClass("active");
                        $("#field").addClass("disabled");
                        $(".cancel-icon").on("click", function(){
                            //we'll remove all new added class on cancel icon click
                            $(".preview-box").removeClass("imgActive");
                            $("#button").removeClass("active");
                            $("#field").removeClass("disabled");
                            $(".img-preview img").remove();
                            // that's all in javascript/jquery now the main part is PHP
                        });
                    }else{
                        alert("Invalid img URL - " + imgURL);
                        $("#field").val('');//if pattern not matched we'll leave the input field blank
                    }
                }
            });
        });
    </script>
    
</body>
</html>

 

2: Second, create a CSS file with the name of style.css

 

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@200;300;400;500;600;700&display=swap');
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Poppins', sans-serif;
}
html,body{
    display: grid;
    height: 100%;
    place-items: center;
}
::selection{
   color: #fff;
   background: #4158d0;    
}
.wrapper{
    height: 450px;
    width: 500px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: column;
}
.wrapper .preview-box{
    position: relative;
    width: 100%;
    height: 320px;
    display: flex;
    text-align: center;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
    border: 2px dashed #c2cdda;
}
.preview-box.imgActive{
    border: 2px solid transparent;
}
.preview-box .cancel-icon{
    position: absolute;
    right: 20px;
    top: 10px;
    z-index: 999;
    color: #4158d0;
    font-size: 20px;
    cursor: pointer;
    display: none;
}
.preview-box.imgActive:hover .cancel-icon{
    display: block;
}
.preview-box .cancel-icon:hover{
    color: #ff0000;
}
.preview-box .img-preview{
    height: 100%;
    width: 100%;
    position: absolute;
}
.preview-box .img-preview img{
    height: 100%;
    width: 100%;
    border-radius: 5px;
}
.wrapper .preview-box .img-icon{
    font-size: 100px;
    background: linear-gradient(-135deg, #c850c0, #4158d0);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.wrapper .preview-box .text{
    font-size: 18px;
    font-weight: 500;
    color: #5B5B7B;
}
.wrapper .input-data{
    height: 130px;
    width: 100%;;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    flex-direction: column;
}
.wrapper .input-data #field{
    width: 100%;
    height: 50px;
    outline: none;
    font-size: 17px;
    padding: 0 15px;
    user-select: auto;
    border-radius: 5px;
    border: 2px solid lightgrey;
    transition: all 0.3s ease;
}
.input-data #field.disabled{
    color: #b3b3b3;
    pointer-events: none;
}
.wrapper .input-data #field:focus{
    border-color: #4158d0;
}
.input-data #field::placeholder{
    color: #b3b3b3;
}
.wrapper .input-data #button{
    height: 50px;
    width: 100%;
    border: none;
    outline: none;
    color: #fff;
    font-weight: 500;
    font-size: 18px;
    cursor: pointer;
    border-radius: 5px;
    opacity: 0.5;
    pointer-events: none;
    background: linear-gradient(-135deg, #c850c0, #4158d0);
    transition: all 0.3s ease;
}
.input-data #button.active{
    opacity: 1;
    pointer-events: auto;
}
.input-data #button:active{
    transform: scale(0.99);
}

Now you’ve successfully created a How to Upload, Preview & Download Image using JavaScript & PHP.

CodingNepal .

CodingNepal .

1615804098

Limit Input Characters using HTML CSS & JavaScript

In this video, I have shown how to limit the number of characters allowed in the form input using only HTML CSS & JavaScript.

#animated input field #how limit input characters in javascript #input field animation #limit input characters

I am Developer

1597489654

Laravel - Dynamically Add or Remove Input Fields

In this post, i will share with you how to dynamically add/remove input fields in laravel forms.

As well as, dynamically add/remove input field and save data to database laravel.

Laravel – Add/remove input field Dynamically with Jquery

Dynamically add/remove input fields using submit form with jQuery ajax with validation and store fields into database in laravel:

  1. Step 1: Install Laravel App
  2. Step 2: Add Database Details
  3. Step 3: Create Migration & Model
  4. Step 4: Add Routes
  5. Step 5: Create Controller by Artisan
  6. Step 6: Create Blade View
  7. Step 7: Run Development Server

https://www.tutsmake.com/laravel-dynamically-add-or-remove-input-fields-jquery/

#dynamically add input fields and save data to database laravel #laravel - dynamically add or remove input fields using jquery #add/remove input fields dynamically with jquery laravel #add remove input fields dynamically with jquery and submit to database in laravel

Vue Component for Numbers Input

@smartweb/vue-number-input

Vue component for numbers input.

  • Accessible: uses ARIA agreements (100% accessibility in lighthouse)
  • Use your keyboard to navigate and control
  • Use your mousewheel or touchpad to increase or descrease value
  • Flexible styling
  • Support custom controls through slots

Live Demo

Download

Use npm

npm i @smartweb/vue-number-input

Or via cdn

<script src="https://unpkg.com/@smartweb/vue-number-input/build/vue-number-input.umd.min.js"></script>

Configuration

Import and register in your component.vue file

import VueNumberInput from '@smartweb/vue-number-input';

export default {
    components: {
        VueNumberInput
    }
};

Use it in your template with v-model directive

<template>
    <div id="app">
        <VueNumberInput
            v-model="you_model"
            :min="0"
            :max="100"
        ></VueNumberInput>
    </div>
</template>

Or register it globally in your application entry point (main.js or as you called it)

import Vue from 'vue';
import VueNumberInput from '@smartweb/vue-number-input';
// Global registration of the component
Vue.component('vue-number-input', VueNumberInput);

new Vue({
    render: h => h(App)
}).$mount('#app');

Usage

You can bind following props for vue-input-number element

PropTypeDefault valueDescription
valueNumber0Defines a value for 'value' and 'aria-valuenow' attributes of  element.
minNumberNumber.MIN_SAFE_INTEGERMinimum value of the number range. Provides a value for 'aria-valuemin' attributes of  element.
maxNumberNumber.MAX_SAFE_INTEGERMaximum value of the number range. Provides a value for 'aria-valuemax' attributes of  element.
stepNumber1Incremental step
disabledBooleanfalseDefines a value for 'aria-disabled' and 'disabled' attributes of  element. Also disable controls buttons
readonlyBooleanfalseDefines a value for 'readonly' attribute of  element.
autofocusBooleanfalseDefines a value for 'autofocus' attribute of  element.
controlsPositionString'on edge'Acceptable values: 'on edges', 'left', right'. Defines position of control buttons.
inputClassString-Defines user's class for input element
buttonIncClassString-Defines user's class for increase button
buttonDecClassString-Defines user's class for decrease button

Example

<vue-number-input
    v-model="you_model"
    :value="50"
    :min="0"
    :max="100"
    :controlsPosition="'left'"
/>

For more examples visit demo page

Your own controls through slot

You can create your own controls and pass them to slots
Read more about slots in official docs

<vue-number-input
    class="custom-container"
    v-model="you_model"
    :inputClass="custom-input"
    :buttonIncClass="custom-btn-inc"
    :buttonDecClass="custom-btn-dec"
>
    <!-- slot for decrease button -->
    <template #button-decrease>
        <custom-decrease-button></custom-decrease-button>
    </template>

    <!-- slot for increase button -->
    <template #button-increase>
        <custom-increase-button></custom-increase-button>
    </template>
</vue-number-input>

Events

EventDescriptionParams
inputTriggered on user input or buttons clicksNumber
changeTriggered on value changed and focus leave input elementNumber
focusTriggered when user focused on input fieldFocusEvent
blurTriggered when focus leave input fieldFocusEvent

LICENSE

The MIT License (MIT). Please see License File for more information.

Download Details:
 

Author: smwbtech
Download Link: Download The Source Code
Official Website: https://github.com/smwbtech/vue-number-input 
License: MIT license

#vue #javascript