By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
459,527 Members | 1,192 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 459,527 IT Pros & Developers. It's quick & easy.

Add content to existing div

P: n/a
I have been trying to find an example of how-to add html text to an
exisiting div and have had little success.

The best I found so far was

var pTag = document.createElement("p");
pTag.innerHTML = noBlanks[i]+" is a mandatory field.";
document.getElementById("FormErrors").appendChild( pTag);

However, I was hoping I could pass HTML code and not just text,
something more like

"New line added.<br />"

or anyother HTML Tag I may need to use.

Also, the code only seems to work in IE and not Firefox...?

Thank you for your help!

QB
Sep 4 '08 #1
Share this Question
Share on Google+
7 Replies


P: n/a
Assuming your div has an id attribute called "div_id", you can do
this:

var div = document.getElementById('div_id');
div.innerHTML = "<p><b>Whatever</bHTML that you may want.</p>";

-Jeff

On Sep 4, 9:54*am, question....@hotmail.com wrote:
I have been trying to find an example of how-to add html text to an
exisiting div and have had little success.

The best I found so far was

var pTag = document.createElement("p");
pTag.innerHTML = noBlanks[i]+" is a mandatory field.";
document.getElementById("FormErrors").appendChild( pTag);

However, I was hoping I could pass HTML code and not just text,
something more like

"New line added.<br />"

or anyother HTML Tag I may need to use.

Also, the code only seems to work in IE and not Firefox...?

Thank you for your help!

QB
Sep 4 '08 #2

P: n/a
qu**********@hotmail.com writes:
I have been trying to find an example of how-to add html text to an
exisiting div and have had little success.

The best I found so far was

var pTag = document.createElement("p");
pTag.innerHTML = noBlanks[i]+" is a mandatory field.";
document.getElementById("FormErrors").appendChild( pTag);

However, I was hoping I could pass HTML code and not just text,
something more like

"New line added.<br />"

or anyother HTML Tag I may need to use.
You can.
Also, the code only seems to work in IE and not Firefox...?
Ther error is somewhere else. This should work in FF; most browsers
support innerHTML, even though it's not officially standard.

--
Joost Diepenmaat | blog: http://joost.zeekat.nl/ | work: http://zeekat.nl/
Sep 4 '08 #3

P: n/a
On Sep 4, 2:30*pm, Joost Diepenmaat <jo...@zeekat.nlwrote:
question....@hotmail.com writes:
I have been trying to find an example of how-to add html text to an
exisiting div and have had little success.
The best I found so far was
var pTag = document.createElement("p");
pTag.innerHTML = noBlanks[i]+" is a mandatory field.";
document.getElementById("FormErrors").appendChild( pTag);
However, I was hoping I could pass HTML code and not just text,
something more like
"New line added.<br />"
or anyother HTML Tag I may need to use.

You can.
Also, the code only seems to work in IE and not Firefox...?

Ther error is somewhere else. This should work in FF; most browsers
support innerHTML, even though it's not officially standard.

--
Joost Diepenmaat | blog:http://joost.zeekat.nl/| work:http://zeekat.nl/- Hide quoted text -

- Show quoted text -

Here is the function in question. It works fine in IE but nothing in
Firefox.

function validate_form(theForm) {
/*Validates the user submitted data to ensure that data has been
input and that it is valid
and posts an error message if there is an issue.*/
var frmOk = true; //initialize validation status variable
var errColor = 'ffff99'; //background color when there is an error
in validation

// Create an array of controls to ensure that it wasn't left blank
var noBlanks = [ "FirstName", "LastName", "Address", "City",
"Province", "PostalCode", "TelResidential",
"TelBusiness", "TelCell", "Email", "Job"];

for ( i=0; i < noBlanks.length; i++ ){
if (isEmpty(document.getElementById(noBlanks[i]).value)) {

document.getElementById(noBlanks[i]).style.backgroundColor=errColor;

var pTag = document.createElement('p');
pTag.innerHTML = noBlanks[i]+" is a mandatory field.";
document.getElementById('FormErrors').appendChild( pTag);
frmOk = false;
}
}

if (frmOk == false) {
document.getElementById('FormErrors').style.displa y='block';
return false;
} else {
document.getElementById('FormErrors').style.displa y='none';
return true;
}
}

Any idea where I have made a mistake?

Thank you for your help,

QB
Sep 5 '08 #4

P: n/a
On Sep 4, 2:30*pm, Joost Diepenmaat <jo...@zeekat.nlwrote:
question....@hotmail.com writes:
I have been trying to find an example of how-to add html text to an
exisiting div and have had little success.
The best I found so far was
var pTag = document.createElement("p");
pTag.innerHTML = noBlanks[i]+" is a mandatory field.";
document.getElementById("FormErrors").appendChild( pTag);
However, I was hoping I could pass HTML code and not just text,
something more like
"New line added.<br />"
or anyother HTML Tag I may need to use.

You can.
Also, the code only seems to work in IE and not Firefox...?

Ther error is somewhere else. This should work in FF; most browsers
support innerHTML, even though it's not officially standard.

--
Joost Diepenmaat | blog:http://joost.zeekat.nl/| work:http://zeekat.nl/- Hide quoted text -

- Show quoted text -
Might I ask you, what is officially the standard approach to doing
what I am wanting to do?
QB
Sep 5 '08 #5

P: n/a
qu**********@hotmail.com meinte:
Here is the function in question. It works fine in IE but nothing in
Firefox.

function validate_form(theForm) {
/*Validates the user submitted data to ensure that data has been
input and that it is valid
and posts an error message if there is an issue.*/
var frmOk = true; //initialize validation status variable
var errColor = 'ffff99'; //background color when there is an error
in validation

// Create an array of controls to ensure that it wasn't left blank
var noBlanks = [ "FirstName", "LastName", "Address", "City",
"Province", "PostalCode", "TelResidential",
"TelBusiness", "TelCell", "Email", "Job"];

for ( i=0; i < noBlanks.length; i++ ){
if (isEmpty(document.getElementById(noBlanks[i]).value)) {

document.getElementById(noBlanks[i]).style.backgroundColor=errColor;

Why gEBI? I suppose getElementsByName would be more appropriate. Due to
an "odd" implementation IE also populates the id property of elements
with names with the name value.

But it's IE only.

Gregor
--
http://photo.gregorkofler.at ::: Landschafts- und Reisefotografie
http://web.gregorkofler.com ::: meine JS-Spielwiese
http://www.image2d.com ::: Bildagentur fr den alpinen Raum
Sep 5 '08 #6

P: n/a
qu**********@hotmail.com meinte:
On Sep 4, 2:30 pm, Joost Diepenmaat <jo...@zeekat.nlwrote:
>Ther error is somewhere else. This should work in FF; most browsers
support innerHTML, even though it's not officially standard.

--
Joost Diepenmaat | blog:http://joost.zeekat.nl/| work:http://zeekat.nl/- Hide quoted text -

- Show quoted text -
Please don't quote signatures. And "- Show quoted text -". Get yourself
a decent newsreader like Thunderbird.
Might I ask you, what is officially the standard approach to doing
what I am wanting to do?
The usual methods for manipulating the DOM: createElement(),
append/replace/removeChild(), ...

Gregor

--
http://photo.gregorkofler.at ::: Landschafts- und Reisefotografie
http://web.gregorkofler.com ::: meine JS-Spielwiese
http://www.image2d.com ::: Bildagentur fr den alpinen Raum
Sep 5 '08 #7

P: n/a
qu**********@hotmail.com writes:
On Sep 4, 2:30*pm, Joost Diepenmaat <jo...@zeekat.nlwrote:
>Ther error is somewhere else. This should work in FF; most browsers
support innerHTML, even though it's not officially standard.

Might I ask you, what is officially the standard approach to doing
what I am wanting to do?
QB
The "official" approach would be to generate each element, including
the TextNodes using the DOM API:

http://www.w3.org/TR/REC-DOM-Level-1...e-binding.html

Note that this can be significantly slower than using innerHTML in
some implementations if you're using many elements.

--
Joost Diepenmaat | blog: http://joost.zeekat.nl/ | work: http://zeekat.nl/
Sep 5 '08 #8

This discussion thread is closed

Replies have been disabled for this discussion.