- 论坛徽章:
- 0
|
问题:因初学AJAX,因此碰到了很多问题,都不是很清楚怎么解决,希望大家能帮忙下。
当分别选择了,Application Name,Page Name, Language,Page ID后按Submit,就会出现LCL那个列表,并显示数据库里有的数据。然后我把Translation的数据更改,如:big改为OK或其他。按save(在下面还有个SAVE的按钮)提交,跳转到另一个页面,出现下图
以下是code,请帮忙看看哪里出错了。我个人认为是这里v_sql=v_sql+ "All_Application_Maint.insert_app_field("+ pg_id+","+f_id+",'"+f_val+"',"+lan_id+"); ";有问题了,但不知道怎样改,表头重复输出这句话的结果。
<%
String error = "";
ResultSet rs1 = null;
CallableStatement cstmt1 = null;
Connection conn1 = null;
String f_val = "";
String f_id = "";
String sv=request.getParameter("saveind");
if(request.getMethod().equalsIgnoreCase("POST")){
//if (sv=="Y") {
String app_id=(request.getParameter("an_hidden")).toString();
String lan_id=(request.getParameter("s1")).toString();
String pg_id=(request.getParameter("pn_hidden")).toString();
String v_sql="";
String row_count = request.getParameter("row_count");
int count = Integer.valueOf(row_count).intValue();
for (int i=0;i<count;i++)
{
f_id = request.getParameter("fid_"+i);
f_val = request.getParameter("fn_"+i);
v_sql=v_sql+ "All_Application_Maint.insert_app_field("+ pg_id+","+f_id+",'"+f_val+"',"+lan_id+"); ";
}
try {
InitialContext ic1 = new InitialContext();
DataSource nativeDS1 =(DataSource) ic1.lookup("jdbc/DircCoreDS");
conn1 = nativeDS1.getConnection();
conn1.setAutoCommit (true);
cstmt1 = conn1.prepareCall(" begin " +v_sql + " end;");
out.println(v_sql);
cstmt1.execute();
conn1.close();
}
catch(Exception ex){
System.out.println("Error!");
}
//}
}
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<title>gss</title>
<link href="/Portal/css/Portal.css" type="text/css" rel="stylesheet">
<style type="text/css">
#container {
text-align: left;
height: 110px;
background-color: #ffffff;
}
#container ul{list-style: none;padding: 0;margin: 0;}
#container li {float: left; }
#bread a:active { color:#ffffff; text-decoration: none; }
#bread a:hover { color: #ffffff; text-decoration: none; }
#bread a:link { color: #ffffff; text-decoration: none; }
#bread a:visited { color: #ffffff; text-decoration: none; }
#bread ul {padding: 0;margin: 0;height:10px; padding-left:600px;}
#bread li {float: left; }
#bread li
{float: left;
display: block;
text-decoration: none;
text-align: left;
font-size:12px;padding-right:5px;
text-indent:2px; margin: 0;
border-right:0.1em solid #ffffff;
height:20px;}
#iq1 {
width: 400px;
float: left;
padding: 0px;
vertical-align : top;
}
#iq2 {
width: 400px;
float: left;
padding: 0px;
vertical-align : top;
}
</style>
<script type="text/javascript" >
var an_url ="/plsqlapp/All_Application_Maint.get_appl_name?Search_string=";
var an_header ="Application Name";
var an_header_width ="350";
var an_display ="1";
var an_width ="350";
var an_id ="0";
var an_disp_sel ="1";
var pn_url ="/plsqlapp/All_Application_Maint.get_appl_page?app_id=";
var pn_header ="Page Name";
var pn_header_width ="350";
var pn_display ="2";
var pn_width ="350";
var pn_id ="1";
var pn_disp_sel ="2";
var id_url ="/plsqlapp/All_Application_Maint.get_appl_page?app_id=";
var id_header ="Page ID";
var id_header_width ="350";
var id_display ="1";
var id_width ="350";
var id_id ="0";
var id_disp_sel ="1";
</script>
<script type="text/javascript" src="/Portal/js/Portal_ajax.js"></script>
<script>
function pn_showOptions(objt,ob2){
var vurl="/plsqlapp/All_Application_Maint.get_appl_page?app_id=";
var pg_nme;
pg_nme=document.getElementById("an_hidden").value;
pn_url = vurl+pg_nme+"&pg_nme=";
ajax_showOptions(objt,ob2);
}
function id_showOptions(objt,ob2){
var vurl="/plsqlapp/All_Application_Maint.get_appl_page?app_id=";
var pg_id;
pg_id=document.getElementById("an_hidden").value;
id_url = vurl+pg_id+"&pg_nme=";
ajax_showOptions(objt,ob2);
}
function createRequestObject() {
var ro;
var browser = navigator.appName;
if(browser == "Microsoft Internet Explorer"){
ro = new ActiveXObject("Microsoft.XMLHTTP");
}else{
ro = new XMLHttpRequest();
}
return ro;
}
var http = createRequestObject();
function sndReq() {
http.open('post', vurl);
http.onreadystatechange = handleResponse;
http.send(null);
}
function handleResponse() {
if(http.readyState == 4){
if (http.responseText.length>12) {
document.getElementById("norec").style.display = 'none';
document.getElementById("sailing").style.display = 'block';
document.getElementById("title0").style.display = 'block';
document.getElementById("tblHeader1").style.display = 'block';
var data = eval('(' + http.responseText + ')');
add_rows(data);
} else {
document.getElementById("results").style.display = 'none';
document.getElementById("norec").style.display = 'block';
document.getElementById("sailing").style.display = 'none';
document.getElementById("title0").style.display = 'none';
document.getElementById("tblHeader1").style.display = 'none';
}
}
}
function add_rows(records)
{
div=document.getElementById("tbldata");
var html="";
for (var i=0;i<records.ROW.length;i++)
{
var newdiv=document.createElement("DIV");
if ((i%2)==1) {
html="<UL>";
html=html+"<LI style=\"width:320px;\">"+records.ROW.F_N+"</LI>";
html=html+" "+" "+" "+"<input name=\"fn_"+i+"\" type=\"text\" id=\"fn_"+i+"\" value=\""+records.ROW.LFN+"\" size=\"45\">";
html=html+"<input name=\"fid_"+i+"\" type=\"hidden\" id=\"fid_"+i+"\" value=\""+records.ROW.F_ID+"\">";
html=html+"</UL>";
}
else{
html="<UL>";
html=html+"<LI style=\"width:320px;background-color:#CCCCff;\">"+records.ROW.F_N+"</LI>";
html=html+" "+" "+" "+"<input name=\"fn_"+i+"\" type=\"text\" id=\"fn_"+i+"\" value=\""+records.ROW.LFN+"\" size=\"45\">";
html=html+"<input name=\"fid_"+i+"\" type=\"hidden\" id=\"fid_"+i+"\" value=\""+records.ROW.F_ID+"\">";
html=html+"</UL>";
}
newdiv.innerHTML=html;
div.appendChild(newdiv);
}
document.getElementById("row_count").value=i;
}
function showproc() {
document.getElementById("proc").style.display = 'block';
}
function changBackground(){
if(document.getElementById("searchTerm")){
document.getElementById("searchTerm").style.background = 'lightblue';
}
}
function restoreBackground(){
if(document.getElementById("searchTerm")){
document.getElementById("searchTerm").style.background = 'white';
}
}
var div3;
function showresult() {
div3=document.getElementById("tbldata");
while(div3.childNodes.length > 0){
if(div3.firstChild){
div3.removeChild(div3.firstChild);
}
}
var url = "/plsqlapp/All_Application_Maint.get_json?page_id=";
document.getElementById("results").style.display = 'block';
document.getElementById("sailing").style.display = 'none';
//construct url
p_id = document.theform.pn_hidden.value;
url=url+p_id;
l_id = document.theform.s1.options[document.getElementById("s1").selectedIndex].value ;
url=url+"&p_language="+l_id;
vurl=url;
sndReq();
}
</script>
<style>
#tblHeader {width:950px; blue; vertical-align:top; padding:0; margin: 0; }
#tbldata {width:660px; vertical-align: top;padding: 0; margin: 0px; }
#tblHeader ul{ padding: 0; margin: 0; }
#tbldata ul{ padding: 0; margin: 0; }
#tblHeader li {float: left; }
#tbldata li {float: left; }
#tblHeader li
{float: left;
display: block;
border: 0.1em solid #ffffff;
color: #ffffff;
text-decoration: none;
text-align: center;
background-color:#0D2B88;
padding: 0; margin: 8px;
}
#tbldata li
{float: left;
display: block;
border: 0.1em solid #ffffff;
text-decoration: none;
text-align: left;
font-size:12px;padding: 0;
text-indent:2px; margin: 0px;
margin-left:8px}
#tbldata a:active { color:#000fff; text-decoration: none; }
#tbldata a:hover { color: #000fff; text-decoration: none; }
#tbldata a:link { color: #000fff; text-decoration: none; }
#tbldata a:visited { color: #000fff; text-decoration: none; }
body {
margin-right: 0px;
}
</style>
</head>
<body>
<div id="container">
<ul>
<li style="vertical-align:center;width:600px;height:80px;"><img src="/Portal/assets/images/logo_dcl.gif" alt="Homepage" width="76" height="110" border="0"></li>
<li sytle="vertical-align:center;height:80px;"><img src="/Portal/assets/images/nav_text.gif" alt="Homepage" width="363" height="17" border="0"></li>
</ul>
</div>
<form name="theform" method="POST" action="Language.jsp">
<table>
<tr>
<td width="490">
<div style="width:480px">
<fieldset>
<div id="iq1">
<table width="466" border="0">
<tr>
<td width="128" align="right">
<b>Application Name : </b> </td>
<td width="327">
<input name="an" type="text" id="an" onKeyUp="ajax_showOptions(this,'getAppplicationNames')" value="" size="35">
<input type="hidden" id="an_id" name="an_id">
<input type="hidden" id="an_hidden" name="an_hidden">
<input type="hidden" id="an_disp" name="an_disp">
</td>
</tr>
<tr>
<td align="right">
<b>Language : </b>
</td>
<td>
<%
//Creating Database Instanse
Connection conn =null;
InitialContext ic = new InitialContext();
DataSource nativeDS =(DataSource) ic.lookup("jdbc/DircCoreDS");
conn = nativeDS.getConnection();
conn.setAutoCommit (false);
//Creating the Connection Statement
Statement stmt = conn.createStatement();
//Creating SQL statement
ResultSet rs = stmt.executeQuery("select language_id,LANGUAGE_NAME from ALL_LANGUAGE where LANGUAGE_NAME <> 'English'");
%>
<select name="s1">
<% while(rs.next()) {%>
<option value="<%=rs.getString("LANGUAGE_ID")%>">
<%=rs.getString("LANGUAGE_NAME")%>
</option>
<%}%>
</select>
</td>
</tr>
</td>
</tr>
</table>
</div>
</fieldset>
</div>
</td>
<td width="490" height="70">
<div style="width:480px">
<fieldset>
<div id="iq2">
<table width="426" border="0">
<tr>
<td width="89" align="right">
<b>Page Name : </b> </td>
<td width="327">
<input name="pn" type="text" id="pn" onKeyUp="pn_showOptions(this,'getPageNames')" value="" size="35">
<input type="hidden" id="pn_id" name="pn_id">
<input type="hidden" id="pn_disp" name="pn_disp">
</td>
</tr>
<tr>
<td align="right">
<b>Page ID : </b>
</td>
<td>
<input name="pn_hidden" type="text" id="pn_hidden">
</td>
</tr>
</table>
</div>
</fieldset>
</div>
</td>
</tr>
<%
String p_an = request.getParameter("an_id");
String p_pn = request.getParameter("pn_id");
%>
<tr>
<td height="23" colspan="2" align="center">
<div style="width:950">
<input type="button" value="Submit" onclick="showresult()">
</div>
</td>
</tr>
</table>
<div id="norec" style="width:960px;">
<fieldset>
<div style="font-weight:bold; text-align:center; width:960px;">
There is no data to display between those two destinations.
</div>
</fieldset>
</div>
<div id="sailing" style="width:900x;">
<fieldset>
<legend>LCL Sailings</legend>
<div id="title0"></div>
<div id="tblHeader1"></div>
<div id="results" style="width:900px; display:none;height:450px;padding: 0; margin: 0;">
<div id="tblHeader">
<ul>
<li style="width:320px">Field Name</li>
<li style="width:305px">Translation</li>
</ul>
</div>
<div id="tbldata"></div>
</div>
<div align="center">
<DIV align="center">
<CENTER>
<TABLE width="980" border="1" align="center" cellPadding="0" cellSpacing="0" borderColor="#000082">
<TBODY>
<TR>
<TD align="left" width="980"></TD>
</TR>
</TBODY>
</TABLE>
</CENTER>
</DIV>
<input type="Submit" name="save" value="Save">
<input type="reset" name="Cancel" value="Cancel" onClick="">
<input type="Submit" name="Edit" value="Edit" onClick="">
</div>
<input type="hidden" name="row_count" value="">
<input type="hidden" name="saveind" value="Y">
</fieldset>
</div>
</form>
<script language="javascript" type="text/javascript">
var onetime = 'true';
if(onetime == 'true'){
document.getElementById("norec").style.display = 'none';
document.getElementById("sailing").style.display = 'none';
onetime = 'false';
}
</script>
[ 本帖最后由 HonestQiao 于 2006-7-15 11:16 编辑 ] |
|