Angular | image upload from multiple source to single array












0















I am having issue in image upload from multiple source to sing function and have to insert in array and push to http server.there are almost 8 image upload in different section of page and i have to insert each of them on single array and sent it to the server. Here is the code:






url1;
url2;
element: HTMLImageElement;
fileArray: any;

readUrl(event: any, number) {
alert("1");
console.log('readUrl');
if (event.target.files && event.target.files[0]) {
var reader = new FileReader();
reader.onload = (event: any) => {
console.log('imgurl' + number);
document.getElementById('imgurl' + number).src = event.target.result;
let tsnString = (document.getElementById("tsn_list") as HTMLTextAreaElement).value;
this.fileArray[number] = event.target.result;
console.log(this.fileArray);
}
reader.readAsDataURL(event.target.files[0]);
}
}

<div class="openBase" *ngIf="aadhar==true">
<div class="upload_data">
<div class="upload">
<div class="center_image">
<div class="image-upload">
<label for="file-input">
<img *ngIf="!url1==true" id="imgurl1" height="60" src="/assets/images/upload.png">
<img *ngIf="!url1==false" [src]="url1" height="60">
</label>
<input id="file-input" type="file" (change)="readUrl($event,'1')" />
</div>
<h6 *ngIf="!url1==true" class="font_u">
Upload Front</h6>
<br>
</div>
</div>
<div class="upload">
<div class="center_image">
<div class="image-upload">
<label for="file-input-1">
<img *ngIf="!url2==true" id="imgurl2" height="60" src="/assets/images/upload.png">
<!-- <input type='file' (change)="readUrl2($event)"> -->
<input type='file' id="file-input-1" (change)="readUrl($event,'2')">
</div>
<h6 *ngIf="!url2==true" class="font_u">
Upload Back</h6>
<br>
</div>
</div>
</div>
</div>





I need to upload image in array and sent it to server.










share|improve this question





























    0















    I am having issue in image upload from multiple source to sing function and have to insert in array and push to http server.there are almost 8 image upload in different section of page and i have to insert each of them on single array and sent it to the server. Here is the code:






    url1;
    url2;
    element: HTMLImageElement;
    fileArray: any;

    readUrl(event: any, number) {
    alert("1");
    console.log('readUrl');
    if (event.target.files && event.target.files[0]) {
    var reader = new FileReader();
    reader.onload = (event: any) => {
    console.log('imgurl' + number);
    document.getElementById('imgurl' + number).src = event.target.result;
    let tsnString = (document.getElementById("tsn_list") as HTMLTextAreaElement).value;
    this.fileArray[number] = event.target.result;
    console.log(this.fileArray);
    }
    reader.readAsDataURL(event.target.files[0]);
    }
    }

    <div class="openBase" *ngIf="aadhar==true">
    <div class="upload_data">
    <div class="upload">
    <div class="center_image">
    <div class="image-upload">
    <label for="file-input">
    <img *ngIf="!url1==true" id="imgurl1" height="60" src="/assets/images/upload.png">
    <img *ngIf="!url1==false" [src]="url1" height="60">
    </label>
    <input id="file-input" type="file" (change)="readUrl($event,'1')" />
    </div>
    <h6 *ngIf="!url1==true" class="font_u">
    Upload Front</h6>
    <br>
    </div>
    </div>
    <div class="upload">
    <div class="center_image">
    <div class="image-upload">
    <label for="file-input-1">
    <img *ngIf="!url2==true" id="imgurl2" height="60" src="/assets/images/upload.png">
    <!-- <input type='file' (change)="readUrl2($event)"> -->
    <input type='file' id="file-input-1" (change)="readUrl($event,'2')">
    </div>
    <h6 *ngIf="!url2==true" class="font_u">
    Upload Back</h6>
    <br>
    </div>
    </div>
    </div>
    </div>





    I need to upload image in array and sent it to server.










    share|improve this question



























      0












      0








      0








      I am having issue in image upload from multiple source to sing function and have to insert in array and push to http server.there are almost 8 image upload in different section of page and i have to insert each of them on single array and sent it to the server. Here is the code:






      url1;
      url2;
      element: HTMLImageElement;
      fileArray: any;

      readUrl(event: any, number) {
      alert("1");
      console.log('readUrl');
      if (event.target.files && event.target.files[0]) {
      var reader = new FileReader();
      reader.onload = (event: any) => {
      console.log('imgurl' + number);
      document.getElementById('imgurl' + number).src = event.target.result;
      let tsnString = (document.getElementById("tsn_list") as HTMLTextAreaElement).value;
      this.fileArray[number] = event.target.result;
      console.log(this.fileArray);
      }
      reader.readAsDataURL(event.target.files[0]);
      }
      }

      <div class="openBase" *ngIf="aadhar==true">
      <div class="upload_data">
      <div class="upload">
      <div class="center_image">
      <div class="image-upload">
      <label for="file-input">
      <img *ngIf="!url1==true" id="imgurl1" height="60" src="/assets/images/upload.png">
      <img *ngIf="!url1==false" [src]="url1" height="60">
      </label>
      <input id="file-input" type="file" (change)="readUrl($event,'1')" />
      </div>
      <h6 *ngIf="!url1==true" class="font_u">
      Upload Front</h6>
      <br>
      </div>
      </div>
      <div class="upload">
      <div class="center_image">
      <div class="image-upload">
      <label for="file-input-1">
      <img *ngIf="!url2==true" id="imgurl2" height="60" src="/assets/images/upload.png">
      <!-- <input type='file' (change)="readUrl2($event)"> -->
      <input type='file' id="file-input-1" (change)="readUrl($event,'2')">
      </div>
      <h6 *ngIf="!url2==true" class="font_u">
      Upload Back</h6>
      <br>
      </div>
      </div>
      </div>
      </div>





      I need to upload image in array and sent it to server.










      share|improve this question
















      I am having issue in image upload from multiple source to sing function and have to insert in array and push to http server.there are almost 8 image upload in different section of page and i have to insert each of them on single array and sent it to the server. Here is the code:






      url1;
      url2;
      element: HTMLImageElement;
      fileArray: any;

      readUrl(event: any, number) {
      alert("1");
      console.log('readUrl');
      if (event.target.files && event.target.files[0]) {
      var reader = new FileReader();
      reader.onload = (event: any) => {
      console.log('imgurl' + number);
      document.getElementById('imgurl' + number).src = event.target.result;
      let tsnString = (document.getElementById("tsn_list") as HTMLTextAreaElement).value;
      this.fileArray[number] = event.target.result;
      console.log(this.fileArray);
      }
      reader.readAsDataURL(event.target.files[0]);
      }
      }

      <div class="openBase" *ngIf="aadhar==true">
      <div class="upload_data">
      <div class="upload">
      <div class="center_image">
      <div class="image-upload">
      <label for="file-input">
      <img *ngIf="!url1==true" id="imgurl1" height="60" src="/assets/images/upload.png">
      <img *ngIf="!url1==false" [src]="url1" height="60">
      </label>
      <input id="file-input" type="file" (change)="readUrl($event,'1')" />
      </div>
      <h6 *ngIf="!url1==true" class="font_u">
      Upload Front</h6>
      <br>
      </div>
      </div>
      <div class="upload">
      <div class="center_image">
      <div class="image-upload">
      <label for="file-input-1">
      <img *ngIf="!url2==true" id="imgurl2" height="60" src="/assets/images/upload.png">
      <!-- <input type='file' (change)="readUrl2($event)"> -->
      <input type='file' id="file-input-1" (change)="readUrl($event,'2')">
      </div>
      <h6 *ngIf="!url2==true" class="font_u">
      Upload Back</h6>
      <br>
      </div>
      </div>
      </div>
      </div>





      I need to upload image in array and sent it to server.






      url1;
      url2;
      element: HTMLImageElement;
      fileArray: any;

      readUrl(event: any, number) {
      alert("1");
      console.log('readUrl');
      if (event.target.files && event.target.files[0]) {
      var reader = new FileReader();
      reader.onload = (event: any) => {
      console.log('imgurl' + number);
      document.getElementById('imgurl' + number).src = event.target.result;
      let tsnString = (document.getElementById("tsn_list") as HTMLTextAreaElement).value;
      this.fileArray[number] = event.target.result;
      console.log(this.fileArray);
      }
      reader.readAsDataURL(event.target.files[0]);
      }
      }

      <div class="openBase" *ngIf="aadhar==true">
      <div class="upload_data">
      <div class="upload">
      <div class="center_image">
      <div class="image-upload">
      <label for="file-input">
      <img *ngIf="!url1==true" id="imgurl1" height="60" src="/assets/images/upload.png">
      <img *ngIf="!url1==false" [src]="url1" height="60">
      </label>
      <input id="file-input" type="file" (change)="readUrl($event,'1')" />
      </div>
      <h6 *ngIf="!url1==true" class="font_u">
      Upload Front</h6>
      <br>
      </div>
      </div>
      <div class="upload">
      <div class="center_image">
      <div class="image-upload">
      <label for="file-input-1">
      <img *ngIf="!url2==true" id="imgurl2" height="60" src="/assets/images/upload.png">
      <!-- <input type='file' (change)="readUrl2($event)"> -->
      <input type='file' id="file-input-1" (change)="readUrl($event,'2')">
      </div>
      <h6 *ngIf="!url2==true" class="font_u">
      Upload Back</h6>
      <br>
      </div>
      </div>
      </div>
      </div>





      url1;
      url2;
      element: HTMLImageElement;
      fileArray: any;

      readUrl(event: any, number) {
      alert("1");
      console.log('readUrl');
      if (event.target.files && event.target.files[0]) {
      var reader = new FileReader();
      reader.onload = (event: any) => {
      console.log('imgurl' + number);
      document.getElementById('imgurl' + number).src = event.target.result;
      let tsnString = (document.getElementById("tsn_list") as HTMLTextAreaElement).value;
      this.fileArray[number] = event.target.result;
      console.log(this.fileArray);
      }
      reader.readAsDataURL(event.target.files[0]);
      }
      }

      <div class="openBase" *ngIf="aadhar==true">
      <div class="upload_data">
      <div class="upload">
      <div class="center_image">
      <div class="image-upload">
      <label for="file-input">
      <img *ngIf="!url1==true" id="imgurl1" height="60" src="/assets/images/upload.png">
      <img *ngIf="!url1==false" [src]="url1" height="60">
      </label>
      <input id="file-input" type="file" (change)="readUrl($event,'1')" />
      </div>
      <h6 *ngIf="!url1==true" class="font_u">
      Upload Front</h6>
      <br>
      </div>
      </div>
      <div class="upload">
      <div class="center_image">
      <div class="image-upload">
      <label for="file-input-1">
      <img *ngIf="!url2==true" id="imgurl2" height="60" src="/assets/images/upload.png">
      <!-- <input type='file' (change)="readUrl2($event)"> -->
      <input type='file' id="file-input-1" (change)="readUrl($event,'2')">
      </div>
      <h6 *ngIf="!url2==true" class="font_u">
      Upload Back</h6>
      <br>
      </div>
      </div>
      </div>
      </div>






      javascript angular6 image-uploading






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Nov 16 '18 at 6:38









      Krupesh Kotecha

      2,07311136




      2,07311136










      asked Nov 16 '18 at 6:11









      kunalkunal

      36




      36
























          1 Answer
          1






          active

          oldest

          votes


















          0














          using single object we can do this



          var obj={}; //Declare globally
          var obj_name = any+number;
          obj.obj_name = event.target.files[0];


          before sending it to the server convert the array in to forum data format.



          var data = new FormData();
          for ( var key in obj) {
          data.append(key, obj[key]);
          }


          then pass this data to server using ajax.



          by making proper changes you can do it in array also.






          share|improve this answer

























            Your Answer






            StackExchange.ifUsing("editor", function () {
            StackExchange.using("externalEditor", function () {
            StackExchange.using("snippets", function () {
            StackExchange.snippets.init();
            });
            });
            }, "code-snippets");

            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "1"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });














            draft saved

            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53332368%2fangular-image-upload-from-multiple-source-to-single-array%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            0














            using single object we can do this



            var obj={}; //Declare globally
            var obj_name = any+number;
            obj.obj_name = event.target.files[0];


            before sending it to the server convert the array in to forum data format.



            var data = new FormData();
            for ( var key in obj) {
            data.append(key, obj[key]);
            }


            then pass this data to server using ajax.



            by making proper changes you can do it in array also.






            share|improve this answer






























              0














              using single object we can do this



              var obj={}; //Declare globally
              var obj_name = any+number;
              obj.obj_name = event.target.files[0];


              before sending it to the server convert the array in to forum data format.



              var data = new FormData();
              for ( var key in obj) {
              data.append(key, obj[key]);
              }


              then pass this data to server using ajax.



              by making proper changes you can do it in array also.






              share|improve this answer




























                0












                0








                0







                using single object we can do this



                var obj={}; //Declare globally
                var obj_name = any+number;
                obj.obj_name = event.target.files[0];


                before sending it to the server convert the array in to forum data format.



                var data = new FormData();
                for ( var key in obj) {
                data.append(key, obj[key]);
                }


                then pass this data to server using ajax.



                by making proper changes you can do it in array also.






                share|improve this answer















                using single object we can do this



                var obj={}; //Declare globally
                var obj_name = any+number;
                obj.obj_name = event.target.files[0];


                before sending it to the server convert the array in to forum data format.



                var data = new FormData();
                for ( var key in obj) {
                data.append(key, obj[key]);
                }


                then pass this data to server using ajax.



                by making proper changes you can do it in array also.







                share|improve this answer














                share|improve this answer



                share|improve this answer








                edited Nov 16 '18 at 10:53

























                answered Nov 16 '18 at 7:22









                RAGINROSERAGINROSE

                16918




                16918
































                    draft saved

                    draft discarded




















































                    Thanks for contributing an answer to Stack Overflow!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid



                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.


                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53332368%2fangular-image-upload-from-multiple-source-to-single-array%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Bressuire

                    Vorschmack

                    Quarantine