模态对话框jquery规则

时间:2012-05-20 19:16:51

标签: php javascript jquery jquery-ui modal-dialog

亲爱的所有

我是PHP的新手,jQuery,英文不好。

我想从数据库中询问jQuery模式对话规则。这是我的数据库:

Database picture

这是我的代码:Javascript规则和jQuery验证,无需加载数据库:

rules: {
  user: {
    required: true,
    number: true,
    range: [1, 8]
  }                        
},
messages: {
user: {
required: "* sorry field user empty.",
number: "* Field user must number.",
    range: "* Field user must between 1 to 8"
}                     
}

我使用的是PHP,这是我的表单字段,仅限用户使用。

<?php $user = array(
          'name'           => 'user',
          'id'             => 'user',
          'class'          => 'user',
          'value'          => '',
          'style'          => 'border: groove 2px;',
          'size'           => '3',
          'maxlength'      => '3'
          ); ?>
          <td> <?php echo form_label('User');?> </td>
        <td> : </td>
        <td> <?php echo form_input($user); ?></td>

问题是如何通过加载数据库来输入规则。

例如:

如果我使用userdata登录并加载数据库,则$items值为8

echo $this->session->userdata('items')

范围规则是否自动在1到8之间?如下图所示:

My modal dialog

并且,如果登录用户数据加载数据库$items的值为6,那么范围是否会自动在16之间规则?如果$items4,则同样的问题。

我需要你的帮助。

非常感谢你的关注。

致以最诚挚的问候,

法会

1 个答案:

答案 0 :(得分:0)

我不确定form_input()的作用,但你可以尝试添加变量来输入并在附加验证规则时将其解压缩

$user = array(
      'name'           => 'user',
      'id'             => 'user',
      'class'          => 'user',
      'value'          => '',
      'style'          => 'border: groove 2px;',
      'size'           => '3',
      'maxlength'      => '3',
      'data-range'     => $this->session->userdata('items')
      );

在javascript代码中

rules: {
  user: {
      required: true,
      number: true,
      range: [1, parseInt($('#user').data('range'))]
}...    

如果数据不会添加到生成的输入字段,您可以尝试将其添加到类中,例如

 'class'          => 'user range_'.$this->session->userdata('items'),

并在js中更改

parseInt($('#user').attr('class'))

parseInt($('#user').attr('class').substring($('#user').attr('class').indexOf('range_')+6));   //add 6 as this is the length of range_