2016-03-30 1 views
3

ich JQuery getScript verwendet habe und HTML-Formular von Javascript erzeugen jedoch bekam ich Stenografie Eigenschaftsnamen werden nicht von aktueller Javascript-Version in PhpStorm unterstützt aber auch meine Funktion Arbeit . Bedenken: Bevor ich PHP verwendet, um HTML-Formular in einem anderen PHP-Framework zu generieren, aber ich denke, ich sollte nicht Server-Skript zu tun, dass ich JS verwenden sollte, aber ich weiß nicht, wie es geht und es unterstützt alle Browser oder nicht, also bitte geben Sie mir eine Idee von dieser Technik, weil ich noch nicht viel mehr über das Verurteilen von DOM und seiner Leistung verstehe.Stenografie Eigenschaftsnamen werden nicht von aktueller Javascript-Version in PhpStorm unterstützt

Sicherheitsbedenken: Wenn ich Javascript verwendet, um HTML-Formular als unten Skript zu generieren, wird es weniger Sicherheit oder schlechte Leistung oder nicht?

Eine andere Hand, wenn ich diesen Code halten innerhalb von HTML Ich werde nie diese Fehler Typen bekam.

$(document).ready(function() { 
    returnTill('returnTill'); 
}); 

function returnTill(returnTill) { 

    var chief_opt = ''; 
    var teller_opt = ''; 
    $.ajax({ 
     url:'/teller/return_till_data', 
     method:'get', 
     dataType:'json', 
     timeout:4000, 
     async: false, 
     success:function (data, status) { 
      $.each(data, function(ins, vals){ 
       if(ins === 'chief') { 
        cheifs = data.chief; 
        for(var key in cheifs){ 
         chief_opt += '<option value="'+vals[key].id+'"> '+vals[key].username+'/'+vals[key].account_no+' </option>'; 
        } 
       }if(ins === 'teller') { /* Tellers*/ 
        tellers = data.teller; 
        for(var key in tellers){ 
         teller_opt = '<option value="'+vals[key].id+'"> '+vals[key].username+'/'+vals[key].account_no+' </option>'; 
        } 
        loadModale({ 
         idSelector: returnTill, 
         title: 'Return Till', 
         labels: ['From','To','Amount','Description'], 
         loadType:'returnTill', 
         forms: { 
          input: { 
           selection: { 
            from:{chief_opt,class:'form-control', name:'retn_chief', id:'retn_chief'}, 
            to:{teller_opt, class:'form-control', name:'retn_teller', id:'retn_teller'}, 
           }, 
           Amount :{type: 'text', name: 'retn_amount', class: 'form-control', Id: 'retn_amount', placeholder: '', style: '', value:''}, 
           token:{ type: 'hidden', name: '_token', class: 'form-control', Id: 'token', placeholder: '', style: '', value: '{{csrf_token()}}'}, 
          }, 
          textarea : { 
           description:{class:'form-control', name:'tran_descr', rows:10, id:'tran_descr'} 
          } 
         },script: [ 
          '/theme/js/jquery.validate.min.js', 
          '/theme/js/bootstrap-datepicker/js/bootstrap-datepicker.js', 
         ] 
        }); 
       } 
      }); 

     },error: errorCallback, 
    }); 
} 

Fehler:

enter image description here

+0

Als Objektnotation müssen Sie Eigenschaft und Wert eingeben 'a: 'something'' – kosmos

+0

Ich verstehe nicht, warum es funktioniert, und es hat nie irgendwelche Fehler, wenn ich es in HTML-Dokument Wrapper platzieren. –

+0

Javascript interpretiert, dass 'chief_opt'' chief_opt = 'etwas' ist, deshalb funktioniert es. Wie auch immer, das richtige sollte sein, Eigenschaft und Wert zu verwenden, deshalb bemerkt phpstorm es als einen Fehler – kosmos

Antwort

4

Sie können es auf diese Weise beheben:

from:{chief_opt: chief_opt} 

Also, wenn Sie Ihren Code dies ändern:

from:{chief_opt: chief_opt, class:'form-control', name:'retn_chief', id:'retn_chief'}, 
to:{teller_opt: teller_opt, class:'form-control', name:'retn_teller', id:'retn_teller'}, 

Sie sollten den PHPStorm-Fehler nicht mehr erhalten.

Hoffe, es half oder zumindest ein wenig gelöscht. ;)

15

ich die folgenden Schritte in WebStorm das gleiche Problem zu lösen, kann es in PhpStorm so auch funktionieren:

  1. Gehen Sie zu Einstellungen durch Drücken von ALT + STRG + S
  2. Klicken Sie auf „Sprachen und Frameworks "
  3. Klicken Sie auf 'Javascript'
  4. Wählen Sie in der Dropdown-Liste" Javascript-Sprachversion "'ECMAScript 6' aus.
  5. Klicken Sie auf "OK"
  6. Jetzt öffnen Sie alle * .js-Dateien, die Sie zuvor geöffnet hatten, und beachten Sie, dass die Fehler nicht mehr vorhanden sind.

Hoffnung, dass jemand hilft.

+1

‚Einstellungen‘ für Mac finden Sie verwenden - 'COMMAND +,' – Siddharth