2013-01-11 39 views
0

刷新後我如何關注文本字段?我有自動檢測用戶什麼時候停止鍵入的代碼,然後提交表單。但是如果用戶希望繼續輸入,他們必須再次點擊文本框。如何在jquery刷新後保持焦點在文本字段

此外,如果他們正在執行的查詢沒有結果,則文本字段內的值(文本)將被刪除。我已經呆了好幾個小時了。任何幫助,將不勝感激!

jQuery代碼:

<script> 
$(document).ready(function() { 
    $("#cat").change(function() { 
    this.form.submit(); 
}) 

var typingTimer;    //timer identifier 
var doneTypingInterval = 1000; //time in ms, 5 second for example 

//on keyup, start the countdown 
$('#legal').keyup(function(){ 
    clearTimeout(typingTimer); 
    if ($('#legal').val) { 
     typingTimer = setTimeout(doneTyping, doneTypingInterval); 
    } 
}); 

//user is "finished typing," do something 
function doneTyping() { 
    $("form").submit(); 
} 

}); 
</script> 

頁面代碼:

<%@ LANGUAGE="VBSCRIPT" %> 
<% 
pagetitle="Contractor Details" 
%> 
<!--#INCLUDE VIRTUAL="/_lib/include/header.htm"--> 
<!--#INCLUDE VIRTUAL="/_lib/include/menu.htm"--> 
<script> 
$(document).ready(function() { 
    $("#cat").change(function() { 
    this.form.submit(); 
}) 

var typingTimer;    //timer identifier 
var doneTypingInterval = 1000; //time in ms, 5 second for example 

//on keyup, start the countdown 
$('#legal').keyup(function(){ 
    clearTimeout(typingTimer); 
    if ($('#legal').val) { 
     typingTimer = setTimeout(doneTyping, doneTypingInterval); 
    } 
}); 

//user is "finished typing," do something 
function doneTyping() { 
    $("form").submit(); 
} 

}); 
</script> 
<div class="twoColumnRow"> 
<div class="twoColumnContent"> 
<p class="breadCrm"><a href="/index.htm">Home</a> <span>&gt;</span> <a href="/tools/index.htm">Tools of the Trade</a> <span>&gt;</span> <a href="/tools/finance/index.htm">Finance and Purchasing</a><span>&gt;</span> <a href="/tools/finance/procurement/index.htm">Procurement and Contracts information</a></p> 
<div class="contentPad"> 
<!-- Start of main content --> 

<p class="imageRight">&nbsp;</p> 
<h1><%=pagetitle%></h1> 

<% 
     Dim connectString, connect, conDB, sconDB, lDB, con, scon, lcon, src_abn, src_cat 
     connectString = "Driver={Microsoft Text Driver (*.txt; *.csv)}; DBQ=" & Server.MapPath("data") 
       src_legal = Request.QueryString("legal") 
       src_cat = Request.QueryString("cat") 
     set connect = Server.CreateObject("ADODB.connection") 
     connect.open connectString 

     if src_cat = "all" then 
     conDB = "SELECT * FROM cont.csv WHERE ucase(legal) LIKE ucase('%"+src_legal+"%')" 
     lDB = "SELECT * FROM cont.csv WHERE ucase(legal) LIKE ucase('%"+src_legal+"%')" 
     else 
     conDB = " SELECT * FROM cont.csv WHERE " & src_cat & " = 'Yes' AND ucase(legal) LIKE ucase('%"+src_legal+"%')" 
     lDB = " SELECT * FROM cont.csv WHERE " & src_cat & " = 'Yes' AND ucase(legal) LIKE ucase('%"+src_legal+"%')" 
     end if 

     sconDB = "SELECT * FROM cont.csv" 

     set con = connect.execute(conDB) 
     set scon = connect.execute(sconDB) 
     set lcon = connect.execute(lDB) 
%> 
<h2>Search results</h2> 
<% if not con.BOF then %> 
<div style="margin-top:1em"> 

    <form id="searchf" action="dbinstant.htm" method="get"> 

     <p>Company name:1<br/> 
     <input id="legal" name="legal" type="text" value="<%=src_legal%>"> 
     </p> 
    <p>Categories for Creative Design:<br/> 
     <select id="cat" name="cat"> 
     <option class="group" label="All categories" value="all" <%if request.querystring("cat") = "all" then response.write("selected") %>></option> 
     <option class="group" label="Strategic brand, marketing and communications advice" value="a" <%if request.querystring("cat") = "a" then response.write("selected") %>></option> 
     <option class="group" label="Graphic design and layout" value="b" <%if request.querystring("cat") = "b" then response.write("selected") %>></option> 
     <option class="group" label="Forms design" value="c" <%if request.querystring("cat") = "c" then response.write("selected") %>></option> 
     <option class="group" label="Web design and development" value="d" <%if request.querystring("cat") = "d" then response.write("selected") %>></option> 
     <option class="group" label="Authoring services" value="e" <%if request.querystring("cat") = "e" then response.write("selected") %>></option> 
     <option class="group" label="Editorial services" value="f" <%if request.querystring("cat") = "f" then response.write("selected") %>></option> 
     <option class="group" label="Translation services" value="g" <%if request.querystring("cat") = "g" then response.write("selected") %>></option> 
     <option class="group" label="Photography and film services" value="h" <%if request.querystring("cat") = "h" then response.write("selected") %>></option> 
     <option class="group" label="Scanning and digitisation services" value="i" <%if request.querystring("cat") = "i" then response.write("selected") %>></option> 
     <option class="group" label="Multimedia editing services" value="j" <%if request.querystring("cat") = "j" then response.write("selected") %>></option> 
     </select> 
    </p> 
    <input type="submit" value="Search" /> 
    </form> 
    <br /> 

    <table style="font-size:.9em;" class="contentTable"> 
      <tr> 
       <th>ABN:</th> 
       <th>Company Name:</td> 
      </tr> 
    <% con.Movefirst() %> 
    <% while (NOT con.EOF) %> 
      <tr> 
       <td width="120px"><%=con("abn")%></th> 
       <td><a href="dbcomp.htm?abn=<%=con("abn")%>&cat=all"><%=con("legal")%></a></td> 
      </tr> 
    <% 
    con.MoveNext() 
    Wend 
    %> 
</table> 

</div> 
<% else %> 
    <% scon.Movefirst() %> 
    <form action="dbinstant.htm" method="get"> 

     <p>Company name:2<br/> 
     <input id="legal" name="legal" type="text"> 
     </p> 

    <p>Categories for Creative Design:<br/> 
     <select id="cat" name="cat"> 
     <option class="group" label="All categories" value="all" <%if request.querystring("cat") = "all" then response.write("selected") %>></option> 
     <option class="group" label="Strategic brand, marketing and communications advice" value="a" <%if request.querystring("cat") = "a" then response.write("selected") %>></option> 
     <option class="group" label="Graphic design and layout" value="b" <%if request.querystring("cat") = "b" then response.write("selected") %>></option> 
     <option class="group" label="Forms design" value="c" <%if request.querystring("cat") = "c" then response.write("selected") %>></option> 
     <option class="group" label="Web design and development" value="d" <%if request.querystring("cat") = "d" then response.write("selected") %>></option> 
     <option class="group" label="Authoring services" value="e" <%if request.querystring("cat") = "e" then response.write("selected") %>></option> 
     <option class="group" label="Editorial services" value="f" <%if request.querystring("cat") = "f" then response.write("selected") %>></option> 
     <option class="group" label="Translation services" value="g" <%if request.querystring("cat") = "g" then response.write("selected") %>></option> 
     <option class="group" label="Photography and film services" value="h" <%if request.querystring("cat") = "h" then response.write("selected") %>></option> 
     <option class="group" label="Scanning and digitisation services" value="i" <%if request.querystring("cat") = "i" then response.write("selected") %>></option> 
     <option class="group" label="Multimedia editing services" value="j" <%if request.querystring("cat") = "j" then response.write("selected") %>></option> 
     </select> 
    </p> 
    <input type="submit" value="Search" /> 
    </form> 
    <br /><hr /> 
<p>No records match your query.</p> 
<p><a href="dbtest.htm">Return to search page</a></p> 
<% 
    end if 
    con.close 
%> 


<!-- End of main content --> 
</div> <!-- end contentPad div --> 
</div> <!-- end twocolumncontent div --> 
<div class="twoColumnLinks"> 

<!--<div class="relatedLinks"> 
<h3>Related Links</h3> 
<ul> 
<li><a href="/index.htm">Related link 1</a></li> 
</ul> 
</div>--> <!-- end relatedlinks div --> 
<!--#INCLUDE VIRTUAL="/_lib/include/quicklinks.htm"--> 
<!--#INCLUDE VIRTUAL="/_lib/include/mylinks.htm"--> 
</div> <!-- end twocolumnlinks div --> 
</div> <!-- end twocolumnrow div --> 
<!--#INCLUDE VIRTUAL="/_lib/include/footer.htm"--> 
+2

你有沒有試圖把'$( '#法律')專注()。 '? – dunli

+0

這是一個jQuery/html問題,而不是SQL。刪除了'sql'標籤 – Kermit

+0

這很有效,但是當您鍵入時重點在於刪除以前的內容。有沒有一種方法可以在當前文本字段中的文本之後開始輸入? – sephiith

回答

1

再試試這個:

$(document).ready(function() { 
    $("#cat").focus(); 
    $("#cat").val($("#cat").val()); 
    $("#cat").change(function() { 
     this.form.submit(); 
    }); 
}); 
+0

這很有效,但是當您鍵入時重點在於刪除以前的內容。有沒有一種方法可以在當前文本字段中的文本之後開始輸入? – sephiith

+0

再試一次,我不確定它是否正常。 –

1

您可以調用你想文本光標放置在元素上的焦點()事件。 。例如:在您的身體的onload部分地方$( '#法律')專注()

+0

這很有效,但是當您鍵入時重點在於刪除以前的內容。有沒有一種方法可以在當前文本字段中的文本之後開始輸入? – sephiith

+0

說實話,我認爲你的解決方案的設計不是很好。每次都不要發佈(並重新加載整個頁面),而應該考慮使用Ajax調用來部分往返服務器以保存數據。這樣你就可以避免中斷用戶交互 – gerrytan

+0

我將如何獲得部分整理?你能否寄給我一些特定的資源,這將有助於堆砌。謝謝! – sephiith

相關問題