powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Проблема с параметром Ajax
3 сообщений из 3, страница 1 из 1
Проблема с параметром Ajax
    #35203677
324f4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
День дорбый други! Здравы будете!
Опишу свою проблему.
Есть у меня приложение Ajax. В качестве серверной части работает страница JSP, которой и передаются параметры. На клиенте используется бибилиотека prototype.js
На клиенте "подключаю" Ajax следующим образом:


Код: plaintext
1.
2.
3.
4.
5.
6.
........................
<div class="auto_complete" id="steelname"
          style="list-style-type:decimal;margin:0;padding:2px;height:400px;cursor:pointer;overflow: auto;display: table-cell; width: 200px"></div>
     
     <script type="text/javascript">new Ajax.Autocompleter('Filter_Steelname', 'steelname', '<%=request.getContextPath()%>/component/ntmkfilterajaxsteelgrade', {})
     </script> 
..........................

Здесь
Код: plaintext
<%=request.getContextPath()%>/component/ntmkfilterajaxsteelgrade'
- путь к моему компоненту.
Серверная jsp параметр получает следующим образом:


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
.................................
String val = "";
	Enumeration e = request.getParameterNames();
	while(e.hasMoreElements()) {
	name = (String) e.nextElement();
		if("_".equals(name))
			continue;		
		val = request.getParameter(name);
.....................................

То есть
Код: plaintext
name
в нашем случае равно
Код: plaintext
Filter_Steelname
В отладке так оно и получается.

Но когда выполняешь проверку типа:

Код: plaintext
1.
2.
if (name.equals("Filter_Steelname"))
{
}
Она не выполняется!!!! То есть параметр
Код: plaintext
name
хоть и равен
Код: plaintext
Filter_Steel
, но не эквивалентен
Код: plaintext
Filter_Steel
.

А вот если поменяешь параметр
Код: plaintext
Filter_Steelname
на другую строку (например
Код: plaintext
Filter_Steel)
то условие выполняется нормально. И так через раз с различными именами параметров...
Кто подскажет, где собака зарыта, почему так происходит?))
Заранее благодарен))
...
Рейтинг: 0 / 0
Проблема с параметром Ajax
    #35203709
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот это:
Код: plaintext
1.
2.
3.
4.
5.
6.
........................
<div class="auto_complete" id="steelname"
          style="list-style-type:decimal;margin:0;padding:2px;height:400px;cursor:pointer;overflow: auto;display: table-cell; width: 200px"></div>
     
     <script type="text/javascript">new Ajax.Autocompleter('Filter_Steelname', 'steelname', '<%=request.getContextPath()%>/component/ntmkfilterajaxsteelgrade', {})
     </script> 
..........................
клиент получает через AJAX или это был изначальный текст страницы?

На сервере ты используешь не сервлет? Как jsp'ишка может выступать серверной частью?
...
Рейтинг: 0 / 0
Проблема с параметром Ajax
    #35205042
324f4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
IDVsbruckВот это:
Код: plaintext
1.
2.
3.
4.
5.
6.
........................
<div class="auto_complete" id="steelname"
          style="list-style-type:decimal;margin:0;padding:2px;height:400px;cursor:pointer;overflow: auto;display: table-cell; width: 200px"></div>
     
     <script type="text/javascript">new Ajax.Autocompleter('Filter_Steelname', 'steelname', '<%=request.getContextPath()%>/component/ntmkfilterajaxsteelgrade', {})
     </script> 
..........................
клиент получает через AJAX или это был изначальный текст страницы?

Этот код находится на html/jsp станице, с которой идет запрос на сервер
IDVsbruck
На сервере ты используешь не сервлет? Как jsp'ишка может выступать серверной частью?
Вот так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

<%@ page import="com.documentum.fc.client.*,com.documentum.com.*" %>
<%@ page import="com.documentum.web.formext.session.*" %>
<%@ page import="java.util.Enumeration" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />


</head>
<body>
<ul class="contacts">
<%

IDfSessionManager sessionManager = null;
IDfSession dfSession = null;
IDfCollection coll = null;
String queryStr=new String();
String name=new String();

try
{
	boolean isNull = false;	
	// get request parameter, don't hardcode to objectName
	// this makes it usable across all our examples
	String val = "";
	Enumeration e = request.getParameterNames();
	while(e.hasMoreElements()) {
	name = (String) e.nextElement();
		if("_".equals(name))
			continue;		
		val = request.getParameter(name);
	}
	

// для справочника марок стали:
if (name.equals("Filter_Steelname"))
{
	queryStr ="select name from database where Upper(ntname) like upper('%" + val
	+ "%') order by  1  asc";
}	

	
	sessionManager = SessionManagerHttpBinding.getSessionManager();
	IDfClientX clientx = new DfClientX();
	//boolean dfc53 = clientx.getDFCVersion().startsWith("5. 3 ");
	String docbase = SessionManagerHttpBinding.getCurrentDocbase();	
	dfSession = sessionManager.getSession(docbase);
	
	// construct query, use DQL hint if 5.3 docbase	
	IDfQuery query = clientx.getQuery();
	
	//System.out.println(queryStr);
	
	// execute query
	query.setDQL(queryStr);
	coll=query.execute(dfSession, IDfQuery.DF_QUERY);
	
	// this limit on row count would only be applicable for pre 5.3 docbases 
	// since we use a limiting DQL hint
	//String cpath = request.getContextPath();
	int rowCount=0;
	//if (coll.)
	//{
		
	//}
	while(coll.next() ) {
		isNull = true;		
%>
		<li class="contact"><%=coll.getString("object_name")%></li>
<%
		rowCount++;
	}
	
	if (isNull == false) {
		  %>
		  <li class="contact" id="none" name="none">Объектов не найдено</li>
		  <%
		  	}	
	
}catch(Exception exc) {
	exc.printStackTrace(System.out);
	out.println(exc);
}
finally
{
	if(coll!=null)
		coll.close();
	if (dfSession != null)
		sessionManager.release(dfSession);
}
%>
</ul>	
</body>
</html>
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Проблема с параметром Ajax
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]