webForumDet fria alternativet

skicka info via formulär till ett annat fönster

JavaScript

5 svar · 520 visningar · startad av sin_adec

Medlem sedan apr. 2002272 inlägg
Frågan#1

Hej!

jag försöker nämligen få till en sökfunktion. men behöver hjälp med att få till så att man söker via första sidan men information presenteras på en annan sida.
Jag använder mig av ajax för att få sida 2 presenterad på första sidan. men har nu fastnat.

i vanliga fall så presenteras sida två på följande sätt:

<body onload="fetch('info.asp', 'container_div', 0)">

formuläret ser ut följande:

<form action="">
        <fieldset>
           <h2><img src="image/search.gif" alt="Search" /></h2>
           <p>
             <input type="text" class="pole" name="search">
             <strong><br>
				sök</strong> | <a href="">avancerad sökning</a>
           </p>
        </fieldset>
      </form>

tacksam för alla svar

Medlem sedan juni 20019 519 inlägg
#2

Fråga:
hur körs fetch? är det med Post eller Get?
Om du kör get så får du nog göra någon funktion som liknar:

function doFormSearch(){
	var url = "info.asp";
	var search= document.getElementByName("search");
	url = url + "?search=" + search;
	fetch(url, 'container_div', 0);
}
<form action="">
	<fieldset>
		<h2><img src="image/search.gif" alt="Search" /></h2>
		<p>
			<input type="text" class="pole" name="search">
			<br>
			<a href="#" onclick="doFormSearch();"><strong>sök</strong></a> | <a href="">avancerad sökning</a>
		</p>
        </fieldset>
</form>

Och sen hantera du Request.Querystring("search") i din info.asp.

Medlem sedan apr. 2002272 inlägg
#3

fetcher.js ser ut följande

var req = new Array(2);

function fetch(URL, divId, index) {
req[index] = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("MSXML2.XMLHTTP.3.0");

req[index].open("GET", URL, true);
req[index].onreadystatechange = function() {
if (req[index].readyState == 4 && req[index].status == 200) {
document.getElementById(divId).innerHTML = req[index].responseText;
}
}
req[index].send(null);
}

vad jag försöker göra är att när man börjar skriva i formuläret som heter "search" så ska resultatet av sökningen publiceras på info.asp

Medlem sedan juni 20019 519 inlägg
#4

som sagt... vad väntas i info.asp för in data.. i en QueryString eller Form? Du har "Get" så det får vara en QueryString. Prova mitt exempel och i din asp kod "förvänta" dig från Request.QueryString("search") eller bara Request("search").

Medlem sedan apr. 2002272 inlägg
#5

info.asp

<%Session.Codepage = 65001
Response.CharSet = "utf-8"%>
<% 
Set Connect = Server.CreateObject("ADODB.Connection") 
Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("db1.mdb")

Set RecSet = Server.CreateObject("ADODB.Recordset")
recset.CursorLocation = 3
recset.PageSize = 9
if request.querystring("about")="sok" then
SQL = "Select * From information where rubrik=" & request.form("search")&""
elseif request.querystring("about")="" then
SQL = "Select * From information"
end if
RecSet.Open SQL, Connect, 3, 3
%>
Medlem sedan juni 20019 519 inlägg
#6

nej... då jag anar att rubrik i din databas är en sträng:

<%Session.Codepage = 65001
Response.CharSet = "utf-8" 
Set Connect = Server.CreateObject("ADODB.Connection") 
Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("db1.mdb")

Set RecSet = Server.CreateObject("ADODB.Recordset")
recset.CursorLocation = 3
recset.PageSize = 9
if request.querystring("about")="sok" then
SQL = "Select * From information where rubrik='" & request.form("search")&"'"
elseif request.querystring("about")="" then
SQL = "Select * From information"
end if
RecSet.Open SQL, Connect, 3, 3
'Loopar också ut ditt recordset.
%>

+ du har ingen "about" querystring i någon av dina koder:

function doFormSearch(){
	var url = "info.asp";
	var search= document.getElementByName("search");
	url = url + "[b]?about=sok&[/b]search=" + search;
	fetch(url, 'container_div', 0);
}
258 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)