本帖最后由 huangguoqing 于 2012-12-20 15:22:22 编辑

解决方案 »

  1.   

    曾经修改autocomplete的源码中的onclick的处理函数,这样就可以了
    将原来click(function() {
    // show select when clicking in a focused field
    if ( hasFocus++ > 1 && !select.visible() ) {
    onChange(0, true);
    }
    click(function() {
    // show select when clicking in a focused field
    //event.preventDefault();
    if ( select.visible() ) {
    select.next();
    } else {
    onChange(0, true);
    }
      

  2.   

    将你刚刚定义的处理方法封装到一个新的方法中,把你的id为autocompleteSchool的input的click绑定这个新方法。function schoolComplete()
    {
      $( "#autocompleteSchool" ).autocomplete({
      source: function( request, response ) {
      $.ajax({
      url: "<%=ctx%>/et/etSchool/selectMarketSchoolAuto.do",
      dataType: "json",
      type:'POST',
    ...
    }
    $("#autocompleteSchool" ).click(funciton(){
                                        schoolComplete();
                                   });
      

  3.   

    显示div时候,让其他的输入框获得焦点,而不是让autocompleteSchool这个input  focus试试
      

  4.   


    我给你说下流程打开div时候。这个肯定没有操作。输入文字之后才会操作。应该是这样。现在是第一次进入输出了文字也不操作。要等你把光标离开这个文本框,再回去才进行操作
      

  5.   

    打开div时候。这个事件没有触发。输入文字之后应该会操作。应该是这样。现在是第一次进入输出了文字也不触发。要等你把光标离开这个文本框,再回去才触发都这个事件 
      

  6.   

    那把focus事件绑定试试,也许会死循环,绑click没效果有点意外。
      

  7.   

    在什么时候将输入框变成autocomplete了,显示div的时候?
      

  8.   

    <div id="instalmentPayWindow" class="easyui-window" title="支付窗口" closed="true" iconCls="icon-save" style="width:410px;height:430px;padding:5px;background: #fafafa;">
    <div class="easyui-layout" fit="true">
    <div region="center" border="false" style="background:#fff;border:1px solid #ccc;">
    <div style="background:#fafafa;width:380px;height:380px;">
     <form id="instalmentPayForm" method="post" action="">
            <div style="padding-top:20px;padding-left:50px;">
            <table>
    <tr>
              <td>省份:
              <select name="provinceId_1" id="provinceId_1">
                 <option value="">省份</option> 
              <c:forEach items="${schoolProvinceList}" var="schoolProvince_1">
                  <option value="${schoolProvince_1.provinceId }" >${schoolProvince_1.provinceName }</option>
                  </c:forEach>  
              </select>   
              </td>
              </tr>      
              <tr>
              <td>城市:
              <select name="cityId_1" id="cityId_1">
              <option value="">城市</option>
              </select>
              </td>
              </tr>
              <tr> 
              <td>性质:
               <select name="schoolNature_1" id="schoolNature_1" class="">
               <option value="">性质</option>
               <option value="0" >小学</option>
               <option value="1" >初中</option>
               <option value="2" >高中</option>
               </select>
               </td>
               </tr>
               <tr>
               <td>学校:     
              <select name="publicSchool_1" id="publicSchool_1">
              <option value="">学校</option>
              </select>
              </td>
              </tr>
              <tr>
              <td>
              <font color=red >按关键字搜索:</font><input id="autocompleteSchool" />
               <input name="schoolId" id="schoolId" type="hidden"/>
               </td>
               </tr>
               <tr>
               <td>年级:
               <select name="chargeGradeId" id="chargeGradeId">
               <option value="">年级</option>
               </select>
               </td>
               </tr>
               <tr>
               <td>班级:
               <select name="chargeClassId" id="chargeClassId">
               <option value="">班级</option>
               </select>
               </td>
    </tr>
      </table>
      <br />
                <label for="name">付费类型:</label>
             <select id="payType" name="payType">
             <option value="0">全款</option>
             <option value="1">订金</option>
             </select>
             <br/>
             <label for="name">付费方式:</label>
             <select id="payMode" name="payMode">
             <option value="0">现金</option>
             <option value="1">刷卡</option>
             <option value="2">现金+刷卡</option>
             </select>
             <br/>
             <label for="name">班级类型:</label>
             <select id="courseType" name="courseType">
             <option value="0">一对一</option>
             <option value="1">大班</option>
             </select>
             <br/>
             <br/>
                <label for="name">现金金额:</label>
                <input type="text" class="easyui-validatebox" id="payLineCash" name="payLineCash" ></input><span style="color:red;">*</span>
                <br/>
                <label for="name">刷卡金额:</label>
                <input type="text" class="easyui-validatebox" id="payLineCard" name="payLineCard" ></input><span style="color:red;">*</span>
            </div>
            <div style="padding-top:30px;padding-left:60px;">
             <a class="easyui-linkbutton" id="instalment_ok" iconCls="icon-ok" href="javascript:void(0)" >保存</a>
    <a class="easyui-linkbutton" id="instalment_cancel" iconCls="icon-cancel" href="javascript:void(0)" >退出</a>
            </div>    
        </form>
        </div>
    </div>
    </div>
    </div>
      

  9.   

    显示div的部分呢,显示div的同时,调用将这个input变成autocomplete的方法
      

  10.   


      <font color=red >按关键字搜索:</font><input id="autocompleteSchool" />
    不就是这个么。这个id的$( "#autocompleteSchool" ).autocomplete({事件。   我在别的页面用都没问题。这个是在div中就有问题了。
      

  11.   


     .ui-autocomplete {
              max-height: 100px;
              max-width: 148px;
              overflow-y: auto;
              /* prevent horizontal scrollbar */
              overflow-x: hidden;
              /* add padding to account for vertical scrollbar */
              padding-right: 5px;
                }            /* 对IE6的 补救方法
             */
                * html .ui-autocomplete {
              height: 100px;
                 }             .ui-autocomplete-loading {
                  background: white
              url("<%=ctx %>/images/ui-anim_basic_16x16.gif")
              right center no-repeat;
                 }
      

  12.   


    $( "#autocompleteSchool" ).autocomplete({
    source: function( request, response ) {
    $.ajax({
    url: "<%=ctx%>/et/etSchool/selectMarketSchoolAuto.do",
    dataType: "json",这段是什么时候调的,是onload时候吗?
      

  13.   


    嗯。$(document).ready(function() {});里面