jQuery:chzn-select的验证消息位置

时间:2015-06-15 09:08:01

标签: javascript php jquery html

在Web应用程序的一种形式中,我希望在选择菜单下显示消息错误验证(特别是它是一个chzn-select插件菜单)。从这个截图中可以看到: enter image description here

它适用于“Metodo Pagamento”选择虽然它不适用于“Cliente”选择这是因为,我认为,Cliente是一个chzn选择菜单。我的老板要我在选择下移动该消息。以下是php-html页面生成文件中的一些代码:

<style>

 label[for="oggetto[]"] {
 padding: 76px 0px 0px 143px !important;
 }

 label[for="modalita_pagamento"] {  
 padding: 13px 0px 0px 130px !important;
 }

 div.selector {
 overflow: visible;
 }

 #filed-sel {
 padding: 19px !important;
 }

</style>

...

<p>
  <label>Cliente</label>
  <span class="field" id="filed-sel">
     <?php
        if (isset($progetto['id_cliente']))
          $sistema->clienti->selectMenuClienti($progetto['id_cliente']);
        else
          $sistema->clienti->selectMenuClienti(null);
     ?>
  </span>
</p>

...

<p>
  <label>Metodo pagamento</label>
  <span class="field" id="filed-sel">
     <?php
        if (isset($progetto['metodo_pagamento']))
        $sistema->progetti>setPagamentoMetodo($progetto['metodo_pagamento']);
        else
        $sistema->progetti->setPagamentoMetodo(null);
    ?>
  </span>
</p> 

...

public function selectMenuClienti($id_cli) {
    $list_cli = $this->allClienti("");
    echo '<select data-placeholder="Scegli un cliente..." id="client_prj"  name="client_prj" class="chzn-select">';
    echo '<option value=""></option>';

    for($i=0; $i<count($list_cli); $i++) {
        if (($id_cli != null) && ($id_cli == $list_cli[$i]["id"])) {
            echo '<option value="'.$list_cli[$i]["id"].'"  selected>'.$list_cli[$i]["id"].' - '.$list_cli[$i]["cognome"].' '.$list_cli[$i]["nome"].'</option>';
        }
        else {echo '<option value="'.$list_cli[$i]["id"].'">'.$list_cli[$i]["id"].' - '.$list_cli[$i]["cognome"].' '.$list_cli[$i]["nome"].'</option>';
        }
    }

    echo '</select>';
}

2 个答案:

答案 0 :(得分:2)

您可以使用errorPlacement选项更改错误消息的定位

errorPlacement: function (error, element) {
    //check whether chosen plugin is initialized for the element
    if (element.data().chosen) { //or if (element.next().hasClass('chosen-container')) {
        element.next().after(error);
    } else {
        element.after(error);
    }
}

演示:Fiddle

答案 1 :(得分:1)

例如:$('#filed-sel')。validate();这是jquery验证。还有一件事你只需添加jquery文件.. 通过网址:http://www.runningcoder.org/jqueryvalidation/demo/