SemanticUI - 未捕获的ReferenceError:未定义submitForm

时间:2015-06-16 14:16:47

标签: javascript php jquery forms semantic-ui

这是我的表格。

<div class="ui form register-form">
<form method="post">
    <?=isset($reg['msg'])? $reg['msg'] : ''?>
  <div class="ui error message">
    <div class="header">Kļūda reģistrējot profilu!</div>
  </div>
  <h4 class="ui dividing header">Profila pamatinformācija</h4>
  <div class="two fields">
    <div class="required field">
      <label>Lietotājvārds</label>
        <div class="field">
          <input type="text" name="username" placeholder="Profila lietotājvārds" maxlength="50" value="<?=isset($reg['username'])? $reg['username'] : ''?>">
        </div>
    </div>
    <div class="required field">
      <label>Dzimums</label>
      <div class="ui selection dropdown">
        <input type="hidden" name="gender">
        <div class="default text">Dzimums</div>
        <i class="dropdown icon"></i>
        <div class="menu">
          <div class="item" data-value="1">Vīrietis</div>
          <div class="item" data-value="2">Sieviete</div>
        </div>
      </div>
    </div>
  </div>
  <div class="two fields">
    <div class="required field">
      <label>Īstais vārds</label>
        <div class="field">
          <input type="text" name="name" placeholder="Vārds" maxlength="50" value="<?=isset($reg['name'])? $reg['name'] : ''?>">
        </div>
    </div>
    <div class="required field">
      <label>E-Pasts</label>
        <div class="field">
          <input type="email" name="email" placeholder="E-Pasta adrese" maxlength="100" value="<?=isset($reg['email'])? $reg['email'] : ''?>">
        </div>
    </div>
  </div>
  <h4 class="ui dividing header">Drošības informācija</h4>
  <div class="two fields">
    <div class="required field">
      <label>Parole</label>
      <div class="ui input">
        <input type="password" name="password" placeholder="Parole" maxlength="70">
      </div>
    </div>
    <div class="required field">
      <label>Parole vēlreiz</label>
      <div class="ui input">
        <input type="password" name="password2" placeholder="Parole vēlreiz" maxlength="70">
      </div>
    </div>
  </div>
    <div class="two fields">
    <div class="required field">
      <label>PIN kods <span class="popup" data-title="PIN kods" data-content="Tas ir kods, kuru vari izmantot gadījumā, ja tavs profils tiek nozagts un/vai tev nav piekļuves nedz profilam, nedz reģistrētajam E-Pastam. PIN kodu mainīt vai atjaunot nav iespējams!">[?]</span></label>
      <div class="ui input">
        <input type="number" name="pincode" placeholder="PIN" maxlength="10">
      </div>
    </div>
    <div class="required field">
    <input type="hidden" name="ans" value="12">
    <label>Drošības jautājums</label>
      <div class="ui input">
        <input type="number" name="security" placeholder="Cik ir kvadrātsakne no 144?">
      </div>
    </div>
  </div>




  <div class="ui divider"></div>
  <div class="required field">
    <div class="ui checkbox">
      <input type="checkbox" name="rules">
      <label>Esmu iepazinies un piekrītu portāla <a href="">lietošanas noteikumiem</a></label>
    </div>
  </div>
  <div class="field">
    <div class="ui checkbox">
      <input type="checkbox" name="email_sub">
      <label>Piekrītu, ka administrācija, ne biežāk kā reizi nedēļā, uz manu E-Pastu drīkst sūtīt jaunumus</label>
    </div>
  </div>

  <input name="submit" class="ui submit button" type="submit" value="Izveidot profilu">
</form>
</div>

这是JavaScript - 它检查表单。

$('.ui.form')
  .form({
    username: {
      identifier  : 'username',
      rules: [
        {
          type   : 'empty',
          prompt : 'Lūdzu, ievadi lietotājvārdu'
        }
      ]
    },
    gender: {
      identifier  : 'gender',
      rules: [
        {
          type   : 'empty',
          prompt : 'Lūdzu, izvēlies dzimumu'
        }
      ]
    },
    name: {
      identifier : 'name',
      rules: [
        {
          type   : 'empty',
          prompt : 'Lūdzu, ievadi savu īsto vārdu'
        }
      ]
    },
    email: {
      identifier : 'email',
      rules: [
        {
          type   : 'empty',
          prompt : 'Lūdzu, ievadi E-Pasta adresi'
        },
        {
          type   : 'empty',
          prompt : 'Lūdzu, ievadi E-Pasta adresi'
        }
      ]
    },
    password: {
      identifier : 'password',
      rules: [
        {
          type   : 'empty',
          prompt : 'Lūdzu, ievadi savu paroli'
        },
        {
          type   : 'length[6]',
          prompt : 'Parolei jābūt vismaz 6 simbolu garumā'
        }
      ]
    },
    password2: {
      identifier : 'password2',
      rules: [
        {
          type   : 'empty',
          prompt : 'Lūdzu, ievadi savu paroli vēlreiz'
        },
        {
          type   : 'match[password]',
          prompt : 'Abām parolēm jābūt vienādām'
        }
      ]
    },
    pin: {
      identifier : 'pincode',
      rules: [
        {
          type   : 'empty',
          prompt : 'Lūdzu, ievadi PIN kodu'
        }
      ]
    },
    security: {
      identifier : 'security',
      rules: [
        {
          type   : 'empty',
          prompt : 'Lūdzu, ievadi atbildi uz drošības jautājumu'
        },
        {
          type   : 'match[ans]',
          prompt : 'Atbilde uz drošības jautājumu nav pareiza'
        }
      ]
    },
    rules: {
      identifier : 'rules',
      rules: [
        {
          type   : 'checked',
          prompt : 'Tev ir jāpiekrīt lietošanas noteikumiem'
        }
      ]
    }

  }, { onSuccess: submitForm });

当我按下提交按钮时,JavaScript不会验证表单 - 它会自动将其发送到PHP端。

当我从JavaScript中删除{ onSuccess: submitForm }时,JavaScript会检查表单,但它没有提交给PHP。

发生了什么?昨天表格很好,今天还有很多问题......

我想,JavaScript首先检查表单,然后才将其推送到PHP。

请帮助。

1 个答案:

答案 0 :(得分:0)

我找到了解决方案 我不得不使用function()。

onSuccess : function(){ 
      submitForm;
    }