Auf keypress-Ereignis, wie kann ich das ändern ',' ein '~'

Ich haben, um zu verhindern, dass Coldfusion Standard-Liste Trennzeichen ',' von der Eingabe in ein Formular-input-array. Ich bin neu in der Verwendung von javascript zur Validierung, und haben nie versucht zu wechseln, die Werte, die jemand eingeben. Wie kann ich Haken ein Komma, und ersetzen Sie es mit einem tilda?

Javascript, die ich bisher ausprobiert habe:

    $(document).ready(function(event){
      var regExComma = /,/;
      $("[name='name[]']").live("keypress",function(event){
//i know i could check the numerical value, i feel this requirement can get more added to it and I would like to just change the regEx accordingly.
        if(regExComma.test(String.fromCharCode(event.which)){
//it was a ',' switch it to '~'
         event.which = 126;
        }
      });
//added to show that the 'name' input form array is the only input that cares about the ','
    var regExDig = /[\d]/
    $("[name=min[]],[name=max[]]").live(keypress, function(event){
       if(!regExDig .test(String.fromCharCode(event.which)){
        event.preventDefault();
        $("#cfocFormMessages").trigger("updateMessages", {"url":"components.cfc/CFOC.cfc", "data":{"more":"stuff"}});
       }
    });
            });

cfml /html eingebunden:

<form action="components/CatagoryService.cfc?method=saveVersion">
<input id="version" name="version" type="text">
<!--- .. more inputs ..--->
<table id="table">
  <thead><tr><th>name col</th>
  <th>min col</th>
  <th>max col</th>
  <th>edit</th>
</tr></thead>
  <tfoot></tfoot>
  <cfoutput query="variables.query">
  <tr><td><input name="name[]" type="text" value="#variables.query.name#"></td>
   <td><input name="min[]" type="text" value="#variables.query.min#"></td>
   <td><input name="max[]" type="text" value="#variables.query.max#"></td>
   <td><input name="id[]" type="hidden" value="#variables.query.id#">
     <a href="#" class="editLink">edit</a></td>
  </tr>
  </cfoutput>
  <tr><td></td><td></td><td><a href="#" class="addLink">add</a></td></td></tr>
</table>
<input type="Submit"/>
</form>

wenn ich alter CatagoryService.cfc?Methode=saveVersion zu <cfreturn arguments> in einen JSON-string, eine typische Reaktion von Coldfusion aussieht:

{VERSION:"",name:"name1,name2",min:"1,3", max:"2,4",id:"1,2"}
  • Was wird passieren, wenn ein Benutzer überschreibt Ihre Scheck-und setzt ein Komma? Wird, dass das ein Sicherheitsproblem sein? Wenn dem so ist, müssen Sie auf dem server sowie auf dem client.
  • Ich bin der überprüfung auf dem server zu. nämlich die " name:"name1", "name2" coldfusion-Liste wird länger sein, als die 'min' und 'max' - Listen. Ich werde das hinzufügen von code zu zeigen, der anderen die Validierung geht.
InformationsquelleAutor DefyGravity | 2011-03-10
Schreibe einen Kommentar