2010-08-26 67 views
0
<html> 
<body> 
<form action="Test1.jsp" method="post"> 

<select name="source" onchange=""> 
<option value="rss">RSS LINK</option> 
<option value="other">OTHER LINK</option> 
</select>  

Enter URL to be added <input type="text" name="url" size=50> 

Enter the Source Name of the URL<t><input type="text" name="source1" size=50> 

<input type="Submit" name="submit1" value="Add URL in DB"> 
</form> 
</body> 
</html> 

上述代碼存儲在Addurl1.jsp文件中,該文件調用名爲Test1.jsp的其他jsp文件。 Test1.jsp下的代碼如下在JSP代碼中使用下拉框

<%@ page import="myfirst.*" %> 
<% 
String url1=request.getParameter("url"); 
String source1=request.getParameter("source1"); 
myfirst.SearchLink p=new myfirst.SearchLink(); 
String result=p.addURL(url1,source1); 
out.println(result); 
System.out.println(result); 
%> 

Test1.jsp調用SearchLink.java程序的addURL(字符串,字符串)函數。 在Addurl1.jsp程序的下拉框中,如果用戶選擇RSS鏈接,則必須調用addURL()方法。 如果用戶選擇OTHER LINK,則必須調用同一個java程序中的另一個名爲addURL1()的方法。

請讓我知道如何修改上述代碼以完成我的任務。

在此先感謝!

回答

2

起初,最好將Addurl1.jsp改爲servlet並實現doPost方法。 Jsp文件應該只包含表示層並且不包含Java代碼。 Java代碼應該放在servlet中(或者如果你使用的是MVC框架,則是控制器)。

你所要求可以很容易地與if語句來實現:

final String RSS_LINK = "rss"; 
final String OTHER_LINK = "other"; 

String url1=request.getParameter("source"); 
String result=""; 
if (url1 != null && url1.equals(RSS_LINK)) { 
    result=p.addURL(url1,source1); 
} 
else if (url1 != null && url1.equals(OTHER_LINK)) { 
    result=p.addURL1(url1,source1); 
} 
+0

url1.equals(RSS_LINK),url1.equals(OTHER_LINK) 它是如何與第一程序的下拉框關聯。 我無法理解。請指教。 – LGAP 2010-08-26 19:16:39

+0

是的..感謝您使用servlet和實施doPost方法的建議。我將盡快開始學習和實施。順便說一句,如果你能給我一個很好的學習資源,這將是非常有用的。 感謝您的回覆。 – LGAP 2010-08-26 19:17:47

+0

感謝您的編輯! – LGAP 2010-08-26 19:21:10