Create Javascript Code Dynamically in JSP
I would like to generate some Javascript code dynamically in my jsp code. How can i do that?
The same way you create HTML code dynamically in your JSP code.
Similar Messages
-
Plese Help...i have to create a table dynamically using JSP
Hi all,
Depending upon what user fills as year & month I have to create a table dynamically.The table should look like this...
DAY S M T W
DATE 1 2 3 4
Name1 - - - -
Name2 - - - -
I know how to get total no available days of any month so i'll use for loop to create <tr>
The info i need is-
How to get the first day of the month ,the user entered using calendar because the first row should start with it.
and the second thing is...
How to keep incrementing it in the loop..like after sun-->mon-->tue....sat-->sun....
& also..sat & sun cols should be of different colors than other weekdays
Please help me.Sounds like you already knows about the Calendar class. You should use that class to get the first day of the month.
Kaj -
Dynamically create javascripts using pl/sql code from page header
I understand by placing a javascript code in the page header is one of the way adding javascript functionality to your pages.
But lets say I need (dynamically) bring my javascripts into the page header using my pl/sql package/functions like core_func_jscript_pkg.get_jscript('jf_isnumber');
1- How can I call my pl/sql package/functions from page header area of Apex?
If I need to use 20 javascripts functions into a page which I have them stored in database (using them on my other pages) and I don't want to copy or re-write them in Apex, instead I like to have 20 line of calls to my pl/sql package like:
core_func_jscript_pkg.get_jscript('myFirstJavascript');
core_func_jscript_pkg.get_jscript('mySecondJavascript');
core_func_jscript_pkg.get_jscript('myThirdJavascript');
core_func_jscript_pkg.get_jscript('myFourthJavascript');
... and so on.
2- In past we wrote our web apps using pl/sql example:
htp.p('<html>');
htp.p('<head>');
core_func_jscript_pkg.get_jscript('jf_get_today_date');
core_func_jscript_pkg.get_jscript('someothe_scripts');
htp.p('</head>');
htp.p('</html>');
I like to do the same thing in Apex, Can I accomplish this in Apex?
Thanks again
-iahmadiThere was a <head> content & dynamic metadata with APEX? that should provide some pointers.
-
How to populate the combo boxes that are created dynamically in jsp
Hi,
I am using JSP.
I am creating combo boxes dynamically (based on the num selected by the user). These dynamically created combo boxes need to have A-Z as options (each box) . Now, when the user chooses the option A in any of the combo-boxes,the rest should not have this option. so on..
how do i achieve this.Kindly help.You'll need to use JavaScript...I have a complicated example and a simple example, however, I cannot really understand the complex example but I know how it works. The looping is too complex for me.
First you'll need to populate a server side variable...depending on how often the data is updated you may want this to run each time a new session is created...this example is run each time Tomcat is started and the application context is initialized:
package kms.web;
// Servlet imports
import javax.servlet.ServletContextListener;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContext;
// utility imports
import java.util.Map;
// domain imports
import kms.domain.LocationService;
import kms.domain.DeptService;
import kms.domain.PatentService;
* This listenter is used to initialize
* the Maps of Locations, Patents & Depts used to populate
* pulldown lists in JSPs
public class InitializeData implements ServletContextListener {
* This method creates the Maps.
public void contextInitialized(ServletContextEvent sce) {
ServletContext context = sce.getServletContext();
LocationService lServ = new LocationService();
// Create the Maps
Map campuses = lServ.getCampuses();
Map buildings = lServ.getBuildings();
Map floors = lServ.getFloors();
Map locs = lServ.getLocations();
// And store them in the "context" (application) scope
context.setAttribute("campuses", campuses);
context.setAttribute("buildings", buildings);
context.setAttribute("floors", floors);
context.setAttribute("locs", locs);
DeptService dServ = new DeptService();
Map depts = dServ.getDepts();
context.setAttribute("depts", depts);
PatentService pServ = new PatentService();
Map patents = pServ.getPatents();
context.setAttribute("patents", patents);
//I did this one myself
/* CodeService cServ = new CodeService();
Map masterMks = cServ.getCodes();
context.setAttribute("masterMks", masterMks);
* This method is necessary for interface.
public void contextDestroyed(ServletContextEvent sce) {
// I have no clue what the heck this is for???
// Let me know if you do!
}So now we travel into the PatentService method called 'getPatents();' which in turn calls a PatentDAO method
Map patents = pServ.getPatents();
Below is the code for the PatentService object:
package kms.domain;
import kms.util.ObjectNotFoundException;
import java.util.*;
* This object performs a variety of dept services, like retrieving
* a dept object from the database, or creating a new dept object.
public class PatentService {
* The internal Data Access Object used for database CRUD operations.
private PatentDAO patentDAO;
* This constructor creates a Dept Service object.
public PatentService() {
patentDAO = new PatentDAO();
public Map getPatents() {
Map patents = null;
try {
patents = patentDAO.retrieveAll();
// If the dept object does not exist, simply return null
} catch (ObjectNotFoundException onfe) {
patents = null;
return patents;
}It may be useful for you to see the code of the Patent class:
package kms.domain;
/*** This domain object represents a dept.
public class Patent implements java.io.Serializable {
private int codeGgm;
private String name = "";
private String description = "";
private int creator;
private String creationDate = "";
private int used;
* This is the full constructor.
public Patent(int codeGgm, String name, String desc, int creator, String creationDate, int used) {
this.codeGgm = codeGgm;
this.name = name;
this.description = desc;
this.creator = creator;
this.creationDate = creationDate;
this.used = used;
public Patent() { }
public int getCodeGgm() {
return codeGgm;
public void setCodeGgm(int codeGgm) {
this.codeGgm = codeGgm;
public String getName() {
return name;
public void setName(String name) {
this.name = name;
public String getDesc() {
return description;
public void setDesc(String desc) {
this.description = desc;
public int getCreator() {
return creator;
public void setCreator(int creator) {
this.creator = creator;
public String getCreationDate() {
return creationDate;
public void setCreationDate(String creationDate) {
this.creationDate = creationDate;
public int getUsed() {
return used;
public void setUsed(int used){
this.used = used;
}And here is the Database table which stores the Patents:
DESC PATENT:
CODE_GGM NUMBER(3)
NAME VARCHAR2(15)
DESCRIPTION VARCHAR2(250)
CREATOR NUMBER(10)
CREATION_DATE DATE
USED NUMBER(1)
So, we then travel into the code of the PatentDAO to see how the DAO object executes the DB query to get all of the Data we need for the select list:
package kms.domain;
import javax.naming.*;
import javax.sql.*;
import java.util.*;
import java.sql.*;
import kms.util.*;
* This Data Access Object performs database operations on Patent objects.
class PatentDAO {
* This constructor creates a Patent DAO object.
* Keep this package-private, so no other classes have access
PatentDAO() {
* This method returns a Map of all the Dept names
* The key is the Dept id
Map retrieveAll()
throws ObjectNotFoundException {
Connection connection = null;
ResultSet results = null;
// Create the query statement
PreparedStatement query_stmt = null;
try {
// Get a database connection
Context initContext = new InitialContext();
DataSource ds = (DataSource)initContext.lookup("java:/comp/env/jdbc/keymanOracle");
connection = ds.getConnection();
// Create SQL SELECT statement
query_stmt = connection.prepareStatement(RETRIEVE_ALL_NAMES);
results = query_stmt.executeQuery();
int num_of_rows = 0;
Map patents = new TreeMap();
// Iterator over the query results
while ( results.next() ) {
patents.put(new Integer(results.getInt("code_ggm")), results.getString("name"));
if ( patents != null ) {
return patents;
} else {
throw new ObjectNotFoundException("patent");
// Handle any SQL errors
} catch (SQLException se) {
se.printStackTrace();
throw new RuntimeException("A database error occured. " + se.getMessage());
} catch (NamingException se) {
throw new RuntimeException("A JNDI error occured. " + se.getMessage());
// Clean up JDBC resources
} finally {
if ( results != null ) {
try { results.close(); }
catch (SQLException se) { se.printStackTrace(System.err); }
if ( query_stmt != null ) {
try { query_stmt.close(); }
catch (SQLException se) { se.printStackTrace(System.err); }
if ( connection != null ) {
try { connection.close(); }
catch (Exception e) { e.printStackTrace(System.err); }
private static final String RETRIEVE_ALL_NAMES
= "SELECT code_ggm, name FROM patent ";
}Now when you wish to use the 'combo box' (also called select lists), you insert this code into your jsp:
<TR>
<%@ include file="../incl/patent.jsp" %>
</TR>
depending on how your files on your server are organized, the "../incl/patent.jsp"
tells the container to look up one directory from where the main jsp is to find the 'patent.jsp' file in the 'incl' directory.
I need some help creating multi-level select lists with JavaScript:
Can anyone explain this code:
<%@ page import="java.util.*,kms.domain.*" %>
<jsp:useBean id="campuses" scope="application" class="java.util.Map" />
<TR><TD ALIGN='right'>Campus: </TD>
<TD>
<select name="campus" size="1" onChange="redirect(this.options.selectedIndex)">
<option value="0" selected>No Campus</option>
<% LocationService ls = new LocationService();
Iterator c = campuses.keySet().iterator();
Map[] bm = new Map[campuses.size()];
Map[][] fm = new Map[campuses.size()][0];
Map[][][] lm = new Map[campuses.size()][0][0];
int i2 = 0;
int j2 = 0;
int k2 = 0;
int jj = 0;
int kk = 0;
while (c.hasNext()) {
Integer i = (Integer)c.next();
out.print("<OPTION ");
out.print("VALUE='" + i.intValue()+ "'>");
out.print( (String) campuses.get(i) );
out.print("</OPTION>");
bm[i2] = ls.getBuildingsByCampus(i.intValue());
fm[i2] = new Map[bm[i2].size()];
lm[i2] = new Map[bm[i2].size()][];
Iterator b = bm[i2].keySet().iterator();
j2 = 0;
while (b.hasNext()) {
Integer j = (Integer)b.next();
fm[i2][j2] = ls.getFloorsByBuilding(j.intValue());
lm[i2][j2] = new Map[fm[i2][j2].size()];
Iterator f = fm[i2][j2].keySet().iterator();
k2 = 0;
while (f.hasNext()) {
Integer k = (Integer)f.next();
lm[i2][j2][k2] = ls.getLocationsByFloor(k.intValue());
k2++;
kk++;
j2++;
jj++;
i2++;
} %>
</select></TD>
</TR>
<TR><TD ALIGN='right'>Building: </TD>
<TD>
<select name="building" size="1" onChange="redirect1(this.options.selectedIndex)">
<option value="0" selected>No Building</option>
</select></TD>
</TR>
<TR><TD ALIGN='right'>Floor: </TD>
<TD>
<select name="floor" size="1" onChange="redirect2(this.options.selectedIndex)">
<option value="0" selected>No Floor</option>
</select></TD>
</TR>
<TR><TD ALIGN='right'>Room: </TD>
<TD>
<select name="location_id" size="1">
<option value="0" selected>No Room</option>
</select></TD>
</TR>
<script>
var cNum = <%=i2%>
var bNum = <%=jj%>
var fNum = <%=kk%>
var cc = 0
var bb = 0
var ff = 0
var temp=document.isc.building
function redirect(x){
cc = x
for (m=temp.options.length-1;m>0;m--)
temp.options[m]=null
temp.options[0]=new Option("No Building", "0")
if (cc!=0) {
for (i=1;i<=group[cc-1].length;i++){
temp.options=new Option(group[cc-1][i-1].text,group[cc-1][i-1].value)
temp.options[0].selected=true
redirect1(0)
var group=new Array(cNum)
for (i=0; i<cNum; i++) {
group[i]=new Array()
<% for (int i=0; i< bm.length; i++) {
Iterator bldgs = bm[i].keySet().iterator();
int j = 0;
while (bldgs.hasNext()) {
Integer intJ =(Integer) bldgs.next(); %>
group[<%=i%>][<%=j%>] = new Option("<%=bm[i].get(intJ)%>", "<%=intJ%>");
<% j++;
} %>
var group2=new Array(cNum)
for (i=0; i<cNum; i++) {
group2[i] = new Array()
for (j=0; j<=bNum; j++) {
group2[i][j] = new Array()
<% for (int i=0; i< fm.length; i++) {
for (int j=0; j< fm[i].length; j++) {
Iterator flrs = fm[i][j].keySet().iterator();
int k = 0;
while (flrs.hasNext()) {
Integer intK =(Integer) flrs.next(); %>
group2[<%=i%>][<%=j%>][<%=k%>] = new Option("<%=fm[i][j].get(intK)%>", "<%=intK%>");
<% k++;
} %>
var temp1=document.isc.floor
var camp=document.isc.campus.options.selectedIndex
function redirect1(x){
bb = x
for (m=temp1.options.length-1;m>0;m--)
temp1.options[m]=null
temp1.options[0]=new Option("No Floor", "0")
if (cc!=0 && bb!=0) {
for (i=1;i<=group2[cc-1][bb-1].length;i++){
temp1.options[i]=new Option(group2[cc-1][bb-1][i-1].text,group2[cc-1][bb-1][i-1].value)
temp1.options[0].selected=true
redirect2(0)
var group3=new Array(cNum)
for (i=0; i<cNum; i++) {
group3[i] = new Array()
for (j=0; j<=bNum; j++) {
group3[i][j] = new Array()
for (k=0; k<=fNum; k++) {
group3[i][j][k] = new Array()
<% for (int i=0; i< lm.length; i++) {
for (int j=0; j< lm[i].length; j++) {
for (int k=0; k< lm[i][j].length; k++) {
Iterator locs = lm[i][j][k].keySet().iterator();
int m = 0;
while (locs.hasNext()) {
Integer intM =(Integer) locs.next(); %>
group3[<%=i%>][<%=j%>][<%=k%>][<%=m%>] = new Option("<%=lm[i][j][k].get(intM)%>", "<%=intM%>");
<% m++;
} %>
var temp2=document.isc.location_id
function redirect2(x){
ff = x
for (m=temp2.options.length-1;m>0;m--)
temp2.options[m]=null
temp2.options[0]=new Option("No Room", "0")
if (cc!=0 && bb!=0 && ff!=0) {
for (i=1;i<=group3[cc-1][bb-1][ff-1].length;i++){
temp2.options[i]=new Option(group3[cc-1][bb-1][ff-1][i-1].text,group3[cc-1][bb-1][ff-1][i-1].value)
temp2.options[0].selected=true
</script>
This produces a related select list with 4 related lists by outputting JavaScript to the page being served. It works the same way as the first example that I describe but I don't understand the looping...maybe someone could explain how to go from the single select list to a double and/or triple level drill down? -
How to create two level dynamic list using JSP , Java Script and Oracle
I am new in JSP. And i am facing problem in creating two level dynamic list using JSP ,Java Script where the listdata will come from Oracle 10g express edition database. Is there any easy way in JSP that is available on in ASP.NET.
Plz response with details.1) Learn JDBC API [http://java.sun.com/docs/books/tutorial/jdbc/index.html].
2) Create DAO class which contains JDBC code and do all SQL queries and returns or takes ID's or DTO objects.
3) Learn Servlet API [http://java.sun.com/javaee/5/docs/tutorial/doc/].
4) Create Servlet class which calls the DAO class, gets the list of DTO's as result, puts it as a request attribute and forwards the request to a JSP page.
5) Learn JSP and JSTL [http://java.sun.com/javaee/5/docs/tutorial/doc/]. Also learn HTML if you even don't know it.
6) Create JSP page which uses the JSTL c:forEach tag to access the list of DTO's and iterate over it and prints a HTML list out.
You don't need Javascript for this. -
Javascript code to enable an ADD button to create duplicate tables and pages for multiple entries
I am using Adobe XI Pro. I have created a multi-page fillable pdf questionnaire that I want to make interactive to the user. Within each page, I have multiple tables that can have ADD buttons to duplicate the table if the client wants more than one test. I would like this table to insert directly below the previous table and they may be able to add upto 5 of these table.
I also have a couple pages in the questionnaire that require duplication for multiple samples. Eg. One page per sample, and I may have upto 10 samples. I would like the javascript to have an ADD button and then add each page behind the previous related sheet (Original and duplicates together)
I am not a javascript coder so I would need some examples and a walk through. I did take some developer courses in engineering but it has been almost two decades
I have search on several forums and cannot find a good resource so I appreciate the help.
Sincerely
TaraSome of what you want to do can be done using template features and a bit of JavaScript, but if your users will be using Reader, version 11 will be required. You can dynamically add new pages, but adding new tables to existing pages with reflow of content that comes after is not possible with a form created in Acrobat. If you have access to Adobe's LiveCycle Designer form creation software, you can create what's known as a dynamic XFA form that can do all of what you want. You can ask in the LiveCycle Designer forum for more information: http://forums.adobe.com/community/livecycle/livecycle_modules_and_development_tools/livecy cle_designer_es?view=discussions
-
How can we use java variable in javascript code on JSP page?
How can we use java variable in javascript code on JSP page?
Pls helpThink about it:
JSP/Java is executed on the Server and produces HTML+JavaScript.
Then that HTML+JavaScript is transfered to the client. The client now interpretes the HTML+JavaScript.
Obviously there's no way to access a Java variable directly from JavaScript.
What you can do, however, is write out some JavaScript that creates a JavaScript variable containing the value of your Java variable. -
somebody in the net say :
" You could however have JSP write javascript code when creating
the page that would set the javascript variables with values
from your JSP variables. "
how can we do that ?? can somebody show me a sample code ??I really hope this is my last answer to this question.
Firstly, make clear of the relationship between client side and server side. There is no free lunch at all. Say if you don't want to make another connection to the server from the client side, all you have to do is sent whatever the client is needed to the client side at the very beginning. I believe that should be something really basic to be considered. It is just like, if you don't go out to buy something from the supermarket on your own, nor the supermarket provides any kind of delivery service to you. How can you physically get something you want to buy? This is the same in nature.
So, your wish is definitely being denied naturally. The only way you can do is, prepare everything on the HTML code for the javascript. Otherwise, make another connection to the server from the client. Don't try to stuck on something which is definitely not possible. -
JSP response into a Javascript code
Suppose I have a form that I submit, and its action is set to a JSP page that returns a series of elements <option>, for example:
<option>2005</option>
<option>2006</option>
Is it possible to GET that JSP response, inside the JavaScript code?
Or should I better state, inside the JSP code, to return ONLY the numbers and then I get it on the JavaScript and use the .add() funtion to add the item to a <select> ?
How do I save that response inside the JavaScript?
For example, I am trying with this Javascript function that handles the changes on a drop-down list:
function clickedOnPType(lista)
document.form1.action = "searchAvailableYears.jsp?pType=" + txtPType;}
document.form1.submit();
}...And I am getting, in return, a series of <option> with the correct data...
Thanking you in advance,
MMSOh hello... in one of my 1000 searches I found that
post days ago and I was already trying with your
code, but I was getting several errors like
"undefined is null or not an object" (in IE),
"xmlhttp.responseXML has no properties" (in
Firefox).... Well one thing i wanted to discuss here is is wat properties does in general a XmlHttpRequest Object contains
checkout the below interface which gives a clear understanding of the Object member properties.
interface XMLHttpRequest {
attribute EventListener onreadystatechange;
readonly attribute unsigned short readyState;
void open(in DOMString method, in DOMString url);
void open(in DOMString method, in DOMString url, in boolean async);
void open(in DOMString method, in DOMString url, in boolean async, in DOMString user);
void open(in DOMString method, in DOMString url, in boolean async, in DOMString user, in DOMString password);
void setRequestHeader(in DOMString header, in DOMString value);
void send();
void send(in DOMString data);
void send(in Document data);
void abort();
DOMString getAllResponseHeaders();
DOMString getResponseHeader(in DOMString header);
readonly attribute DOMString responseText;
readonly attribute Document responseXML;
readonly attribute unsigned short status;
readonly attribute DOMString statusText;
};therefore as you can see XmlHttpRequest.reponseXML returns a Document Object which has below set of properties.
http://www.w3schools.com/dom/dom_document.asp
http://www.javascriptkit.com/domref/documentproperties.shtml
and as said earlier one can send AJAX response in three ways
1).Plain text(with comma seperated values maybe): Which we can collect using XmlHttpRequest.responseText 2).XML: @ client side XmlHttpRequest.reponseXML create a DOM Object using which one can parse it get values
of attributes and values of different tags and then update the view accordingly.
3).JSON(Javascript Object Notation): It is a bit complicated thing to discuss at this moment
however it uses the first property(Plain text) and then
uses set of libraries to parse and update the view.
checkout below links to understand it
http://www.ibm.com/developerworks/library/j-ajax2/
http://oss.metaparadigm.com/jsonrpc/
> function handleOnChange(ddl)
>
var ddlIndex = ddl.selectedIndex;
var ddlText = ddl[ddlIndex].text;
var frmSelect = document.forms["form1"];
var frmSelectElem = frmSelect.elements;
if(ddl.name="pType")
txtYear = "";
txtDay = "";
txtTime = "";
unblock(document.form1.year);
block(document.form1.day);
block(document.form1.time1);
laProxLista = frmSelectElem["year"];
if (ddl.options[ddl.selectedIndex].text !=
txtPType = ddl.options[ddl.selectedIndex].text;
else if(ddl.name="year")
txtDay="";
txtTime="";
unblock(document.form1.day);
block(document.form1.time1);
laProxLista = frmSelectElem["day"];
f (ddl.options[lista.selectedIndex].text != "---")
txtYear = ddl.options[lista.selectedIndex].text;
else if(ddl.name="day")
{ txtTime = "";
unblock(document.form1.time1);
laProxLista = frmSelectElem["time1"];
(ddl.options[ddl.selectedIndex].text != "---")
txtDay = ddl.options[ddl.selectedIndex].text;
else //time1
laProxLista = null;
if (ddl.options[ddl.selectedIndex].text != "---")
txtTime1 = ddl.options[ddl.selectedIndex].text;
if ( txtPType != "---")
xmlhttp = null
// code for initializing XmlHttpRequest
Object On Browsers like Mozilla, etc.
if (window.XMLHttpRequest){
xmlhttp = new XMLHttpRequest()
// code for initializing XmlHttpRequest
Object On Browsers like IE
else if (window.ActiveXObject) {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP")
if (xmlhttp != null)
if(ddl.name = "pType")
// Setting the JSP/Servlet url to get
XmlData
url = "searchAvailableYears.jsp?pType="
+ txtPType;
else if(ddl.name = "year")
url = "searchAvailableDOY.jsp?pType=" + txtPType
PType + "&year=" + txtYear;
else(ddl.name = "day")
url = "searchAvailableTimes.jsp?pType=" +
e=" + txtPType + "&year=" + txtYear + "&day=" +
txtDay;
xmlhttp.onreadystatechange =
handleHttpResponse;
// Open the Request by passing Type of
Request & CGI URL
xmlhttp.open("GET",url,true);
// Sending URL Encoded Data
xmlhttp.send(null);
else{
// Only Broswers like IE 5.0,Mozilla & all other
browser which support XML data Supports AJAX
Technology
// In the Below case it looks as if the
browser is not compatiable
alert("Your browser does not support
XMLHTTP.")
} //else
} //if chosen
//function
//----------------------------Well as far as i can see i do not have any issues with it because your code looks
preety much involved with your business logic but one thing i would like to reconfim
here is the variable "xmlhttp" a global one.
if no declare xmlhttp variable as a global variable.
<script language="javascript">
var xmlhttp;
function handleOnChange(ddl){
function verifyReadyState(obj){
function handleHttpResponse() {
</script>
> function verifyReadyState(obj)
if(obj.readyState == 4){
if(obj.status == 200){
if(obj.responseXML != null)
return true;
else
return false;
else{
return false;
} else return false;
}I believe,this is preety much it.
> function handleHttpResponse() [/b]
if(verifyReadyState(xmlhttp) == true)
//-----------HERE!! ---- I GET "UNDEFINED" IN THE
DIALOG BOX
//------- BELOW THE CODE LINE....---
var response = xmlhttp.responseXML.responseText;
alert(response);
it is obvious that you would get Undefined here as responseText is not a property of Document Object or to be more specific to the Object what xmlhttp.responseXML returns.
you might have to use that as alert(xmlhttp.responseText);
and coming back to parsing the XML reponse you have got from the server we need to use
var response = xmlhttp.responseXML.documentElement; property for it...
and if you put as a alert message it has to give you an Output like"Object"
alert(response);
if that doesn't the browser version which you are using may not support XML properly.
var response = xmlhttp.responseXML.documentElement;
removeItems(laProxLista);
var x = response.getElementsByTagName("option")
var val
var tex
var newOption
for(var i = 0;i < x.length; i++){
newOption = document.createElement("OPTION")
var er
// Checking for the tag which holds the value of the Drop-Down combo element
val = x.getElementsByTagName("value")
try{
// Assigning the value to a Drop-Down Set Element
newOption.value = val[0].firstChild.data
} catch(er){
// Checking for the tag which holds the Text of the Drop-Down combo element
tex = x[i].getElementsByTagName("text")
try{
// Assigning the Text to a Drop-Down Set Element
newOption.text = tex[0].firstChild.data
} catch(er){
// Adding the Set Element to the Drop-Down
laProxList.add(newOption);
here i'm assuming that i'm sending a xml reponse of format something below.
<?xml version="1.0" encoding="ISO-8859-1" ?>
<drop-down>
<option>
<value>1</value>
<text>label1</text>
</option>
<option>
<value>2</value>
<text>label2</text>
</option>
<option>
<value>3</value>
<text>label3</text>
</option>
</drop-down>and i'm trying to update both option's value and label which would be something like
<select >
<option value="1">label1</option>
<option value="2">label2</option>
<option value="3">label3</option>
<option value="4">label4</option>
</select>else where if you are interested in getting a format like the one below
<select >
<option>label1</option>
<option>label2</option>
<option>label3</option>
<option>label4</option>
</select> try the below snippet
var response = xmlhttp.responseXML.getElementsByTagName("text");
var length = response.length;
var newOption
for(var i =0 ; i < length;i++){
newOption = this.document.createElement("OPTION");
newOption.text = response.childNodes[0].nodeValue;
// or newOption.text = response[i].firstChild.data
laProxList.add(newOption);
Another thing...
I have tried to set the content type inside the JSP
to
response.setContentType("text/html");
AND to
response.setContentType("text/xml");
but none of the above is getting me results......use of response.setContentType("text/xml"); is more appropriate here.. as you are outputting XML or a plain text here...
make sure you set the reponse headers in the below fashoin while outputting the results....
response.setContentType("text/xml");
response.setHeader("Pragma", "no-cache");
response.setHeader("Cache-Control", "no-cache");
response.setDateHeader("Expires", 1);
response.setDateHeader("max-age", 0); and if you are serious about implementing AJAX i would advice you start learn basics of XmlHttpRequest Object and more about DOM parsing is being implemented using javascript.
http://www.w3.org/TR/XMLHttpRequest/#xmlhttprequest0
http://www.jibbering.com/2002/4/httprequest.html
http://java.sun.com/developer/technicalArticles/J2EE/AJAX/
http://developer.apple.com/internet/webcontent/xmlhttpreq.html
http://www.javascriptkit.com/domref/documentproperties.shtml
and then go about trying different means of achieving them using simpler and cool frameworks
like DWR,dojo,Prototype,GWT,Jmaki,Back Base 4 Struts,Back Base 4 JSF....etc and
others frameworks like Tomahawk,Ajax4Jsf,ADF Faces,ICE FACES and many others which work with JSF.
Please Refer
http://swik.net/Java+Ajax?popular
http://getahead.org/blog/joe/2006/09/27/most_popular_java_ajax_frameworks.html
Hope that might help :)
and finally an advice before implementing anything specfic API which may be related to any technologies (JAVA,javascript,VB,C++...) always refer to API documentation first which always gives you an Idea of implementing it.
Implementing bad examples posted by people(even me for that matter) directly doesn't make much sense as that would always lands you in trouble.
and especially when it is more specific to XmlHttpRequest always make habit of refering
specific Browser site to know more about why specific Object or its property it not working 4i
IE 6+: http://msdn2.microsoft.com/en-us/library/ms535874.aspx
MOZILLA: http://developer.mozilla.org/en/docs/XMLHttpRequest
Safari: http://developer.apple.com/internet/webcontent/xmlhttpreq.html
Opera 9+: http://www.opera.com/docs/specs/opera9/xhr/
Hope there are no hard issues on this...
REGARDS,
RaHuL -
Inserting asp dynamic content into javascript code
I am inserting the following javascript text scroller code
into my page. As you will see, each line of text to be displayed on
the scroller is preceded with fcontent[0], fcontent[1] etc.
Since the text will be populated by a database field with a
repeat region applied, how do I get the fcontent[0] to increase in
value with each repeated record?
Secondly, will the javascript code support the mix of asp
code as well?
var fcontent=new Array();
begintag='<div style="font: normal 14px Arial; padding:
5px;">'; //set opening tag, such as font declarations
fcontent[0]="<b>What\'s new?</b><br>New
scripts added to the Scroller category!<br><br>The
MoreZone has been updated. <a
href='../morezone/index.htm'>Click here to visit</a>";
fcontent[1]="Dynamic Drive has been featured on Jars as a top
5% resource, and About.com as a recommended DHTML destination.";
fcontent[2]="Ok, enough with these pointless messages. You
get the idea behind this script.</a>";
closetag='</div>';Try this
use eval() to evaluate your code stored in the variable.
http://uk2.php.net/manual/en/function.eval.php
but Chances are tiny mce is encoding the php as html and i am not sure if addt will also be html encoding it it as well, so you need to check in the database if the text is encoded or escaped in some fasion. dont use tiny mce to insert the code just use a normal text area field and if addt is html encoding then you will have to use addt html de encode function to reverse what ever addt may have done to it. -
Jsp page automatically running my javascript code
I have some javascript functions in my jsp that I don't want to run until some kind of action occurs like an onclick event or a button push, but when the page loads it is executing the function. Is there any way to stop this?
Normally a Javascript is processed as it is read by the browser, anything that appears inside of a function will not be processed unless that function is called in the normal reading sequence. It is generally a good practice to keep your callable functions inside of the <head> </head> tags. If you believed that your function got executed when the page loads, check the <body> tag to see if it includes an onLoad event-handler that might have triggered the execution or else the function may have been unintentionally called.
The following HTML file demonstrates:
1) How a JavaScript function is called by the browser in the process of rendering the page,
2) How you can trigger a call to a JavaScript function as soon as the page is loaded (via a body onLoad), and
3) How a JavaScript function can be called after the page has been rendered (via a hyperlink)
<html>
<head>
<script>
var zzz="disp function is called from a hyperlink";
function disp(text) {
alert(text);
</script>
</head>
<body onLoad="disp('disp function is called after the document has been loaded')">
Click me
<script>
alert("disp function is called in the course of reading the HTML");
</script>
</.body>
</html>V.V. -
Avoiding html codes and javascript codes in servlets
Are there ways to avoid long html codes using out.println() and also javascript codes in servlets? Can I make a jsp and include that file somehow in the servlet and do the processing. Can I get reference to the fields or components declared in the jsp and also do conditional flow based on the buttons present in that jsp.
Is it possible to include javascript files and instead call that javascript file and also the particular function in that file?
Please also mention disadvantages if any.Javascript is for the client ONLY. Even if you could find a way to use it on the server side, DON'T.
In my opinion, you should have ZERO logic (except for validation via JavaScript) in your JSP. Have a Servlet do all logic/business rules. The Servlet will create one or more Java Beans that hold ALL dynamic content for a page. Use the Servlets RequestDispatcher to forward the request to the JSP upon completion. The JSP should do nothing more than grab these beans (from the HttpSession object) and fill in the dynamic parts of the page.
By doing it this way, you seperate the logic and presentation. You can add different 'flavors' (WML, XML) by simplying creating a new JSP page that looks for the same Java Beans, but has different template text. -
Creating Forte FieldWidgets Dynamically at Runtime
Hi Everyone,
Could someone please help me with the following problem I have when
creating Forte fieldwidgets dynamically at run-time. I am using Forte
ver. 3.0.G.2.
(-1-) I have a window class with an empty gridfield, <grfMain>, inside a
viewport. The idea is to populate the gridfield with DataField
fieldwidgets dynamically at runtime. Depending on some input criteria,
sometimes some of the DataFields need to map to IntegerNullables, some
to DoubleNullables and some to DateTimeNullables. (Please note that I
cannot use the Forte window workshop to create these fieldwidgets,
because different types of fieldwidgets will be needed at different
times, in different numbers, at run-time. ) Here is a sample of how I am
currently trying to achieve this:
dfDate : DataField = new;
dfDate.MaskType = MK_Template;
dfDate.DateTemplate = new( value='dd/mm/yyyy' );
dfDate.Row = 1;
dfDate.Column = 2;
dfDate.Parent = <grfMain>;
dfInt : DataField = new;
dfInt.MaskType = MK_INTEGER;
dfInt.Row = 2;
dfInt.Column = 2;
dfInt.Parent = <grfMain>;
dfReal : DataField = new;
dfReal.MaskType = MK_FLOAT;
dfReal.Row = 3;
dfReal.Column = 2;
dfReal.Parent = <grfMain>;
The code above is called after the window has been opened with the
Open() statement.
Looking at the code above, one obvious omission is that the "Mapped
Type" of the Datafields are not set up. In the Forte window workshop, an
interface is provided to set up the "Mapped Type" of the Datafield
widgets, but I'm not sure how to do that dynamically, and that is
basically my biggest problem here.
(-2-) If I now run the window class, the Datafield widgets get created,
and they all have the correct input maks, but no validation gets done
when one tabs away from the field. For example, Datafields with
MaskType=MK_INTEGER will gladly accept '--1--0++7', while Datafields
created in the window workshop (mapping to IntegerNullables) will do a
validation, and not allow one to tab out of the field before the extra
minus and plus signs are not removed.
I have the same problem with the Datafields which have
MaskType=MK_Template and DateTemplate='dd/mm/yyyy'. For the date, one
can enter something like '2*\**\****', and leave the field, while the
same type of datafield created in the window workshop (mapped to a
DateTimeNullable), will not allow you to leave the field before a valid
date has not been entered. To summarise, the input masks of my
dynamically created Datafields work fine, but no validation gets done
when the field looses the focus.
(-3-) As a test, I used the Forte debugger ("view"-"local variables") to
look at the differences between Datafields created dynamically, and
those created in the Forte window workshop. One very obvious difference
was that Datafield attribute "MapTypeName" was filled in for the window
workshop Datafields, but not for my dynamically created Datafields. The
problem is that Forte does not allow me to set this attribute
dynamically in my code. How else can I setup the Mapped Type
dynamically?
(-4-) In order to have a consistent look-and-feel throughout our Forte
project, we are making use of Domain classes for DATE and DECIMAL data
entry fields. My questions are:
(4.1) How must I go about creating Datafields dynamically that make use
of these Domain classes?
(4.2) Is it also a matter of setting up the "MapTypeName" attribute,
which I cannot seem to do?
(4.3) Is the mapping done differently for Domain classes?
(-5-) Another interesting thing to note for Datafields created in the
Forte Window Workshop, is that if the mapped type is IntegerNullable
with Input Mask = Integer, or DoubleNullable with Input Mask = Float,
then the Object that the Datafield widget maps to, must first be
instantiated before the Loose-Focus validations will start to work. For
example, if a Datafield widget called "dfTestInt" was created in the
Forte window workshop, which maps to an IntegerNullable, and Input Mask
= Integer, then the following line is needed before the window is
displayed: dfTestInt = new;
Without this line, one can enter something like '2---3+++7', and leave
the field.
This is not true for Datafields where the mapped type is
DateTimeNullable with say Input Mask Template='dd\mm\yyyy'. In this case
validations are done even thought the object being mapped to, has not
been instantiated yet. In other words you will never be able to enter
'2*/**/****', and leave the field for datafield created in the window
workshop. Maybe in this case the validation is being done by the
template itself?
Thanks in advance
Riaan
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>what I mean is rendering JSF components on the fly, becuase some time you don't know things at design time. Lets say I am designing a page in creator that shows the total number of dependants that belongs to a primary inusrance member in text boxes. Of course we don't know in advance how many dependants we have for a specific member unless we go to databse and fetch all the data at runtime. Desiging some thing dynamic like that is very easy in CGI or ASP/JSP but JSF model seems very static due to it's design time feature.
So is it possible with JSF or not? -
How to include custom taglib in javascript on a given jsp page
Hi,
How to include custom taglib in javascript on a given jsp page?
i have a jsp page on which i am adding selectboxes using javascript.
But now i have created my own custom select box and want to add it on a given jsp page.
is the code to create the box box.
<sample:pickListOptions employeeId="abcs123"/>
but how should i embed it in javascript, so that i will be able to add it on the give jsp page.
Thanks,
Javaqueuewhen the jsp page is loaded for the first time it contains a select box containg names created by a taglib.but there is a feature i want to add wherein though javascript the name selectebox will keep on coming on each row i want to add. and this is row addition and deletion is being handled by the javascript. there i encounter the bug how to interact the javascript with taglib so tha with each row addition i will have populated taglib created select box on each row.
Thanks,
Javaqueue -
Using facelets and javascript in dynamic regions
Hello
I'm using JDeveloper 11g 11.1.1.4.0.
In the JDeveloper's documentation I found that there is the best parctice to use facelets.
Now, I have next problem.
I use dynamic region iside xhtml (facelets) page. Inside that dynamic region there is a view (jsff).
The problem is that I can't use any custom JavaScript in that jsff.
I tried next thing:
<trh:script id="trhs1">
<af:resource type="javascript">
testm = function (event) {
alert('qqq');
</af:resource>
</trh:script>
<af:clientListener method="testm" type="dblClick"/>If that task-flow is placed inside jspx (not facelets) page, then all works.
If that task-flow is placed inside xhtm (facelets) page, I have an error from browser that javascript's 'testm' method is not defined.
I checked source code of the result html-page, and my javascript code really doesn't exists there.
I can fix it by moving javascript code from the taskflow's jsff to surrounding xhtml page or using jspx page, but, maybe, there is another solution?
Anatolii
Edited by: Anatolii. on 11/4/2011 0:32Thank for replay, Shay
I found that in Web User Interface Developer's Guide for Oracle ADF, 2 Getting Started with ADF Faces, Section 2.4, "Creating a View Page":
Best Practice: Use Facelets to take advantage of the following:
The Facelets layer was created specifically for JSF, which results in reduced overhead and improved performance during tag compilation and execution.
Facelets is considered the primary view definition technology in JSF 2.0.
Some future performance enhancements will only be available with Facelets
Now I have facelets page with dynamic region, it works.
I've decided to use facelets because of the forthcoming JDeveloper with JSF 2.0 and for performance improvements described above.
Do you think it's better to use jspx?
I have not found any limitations for facelets in Web User Interface Developer's Guide for Oracle ADF and Fusion Developer's Guide for Oracle ADF
Anatolii
Maybe you are looking for
-
I received an online gift card for Father's Day. When I tried to redeem the gift then I received a error message saying I had some itune files missing and I needed to reinstall/download itunes. Will I still have my previous purchase credits after d
-
Hi All, I have created selection screen with 3 tab strips. i have 2 radios button in each tab strip. My problem is, when i have selected first radio button from 2nd tab strip and execute, then it is executing first tab strip radio button first and wh
-
I am designing a magazine spread in InDesign for DPS. When the document is taller than 2000px, the text rasterizes and becomes blurry. If I divide the document into canvases that are 768 x 1024, then the text stays clear. However, the Folio Produce
-
Ugh! Even 4.7 wont open on my computer!
I just tried installing itunes 4.7 from my iPod installation disk, and THAT WONT OPEN EITHER!!!
-
HELP!! Solaris 10 - Mount NFSv4 Share from Linux using Kerberos Security
Greetings all, my apologies if this post is in the wrong place... I have an issue getting Solaris 10 to mount an NFSv4 share from a SuSE Linux 10 machine using kerberos security. I am able to mount the NFSv4 share from another SuSE 10 machine. The ke