How Can We Get ChildNodes From A Custom Tag?
Dec 26, 2003
i wrote a very simple HTML page to test some DOM features between Mozilla and IE. Mozilla is perfect everything went fine and i got the childNodes from my custom tag ( this tag i named <blah> ), inside this tag there is two <span>, that i retrieved. But with IE i really could figure out how its done! Code:
View 1 Replies
ADVERTISEMENT
Jul 11, 2006
this should be simple but I cannot figure it out. This is the HTML:
HTML Code:
<div id="box">
<p>one</p>
<p>two <strong>three</strong></p>
...
</div>
The JavaScript function has to take everything inside <div id="box"> and put it into another div. It should become:
HTML Code:
<div id="box">
<div class="content">
<p>one</p>
<p>two <strong>three</strong></p>
...
</div>
</div>
So how can I get all childNodes recursively to enclose them with another element?
View 2 Replies
View Related
Jan 4, 2006
I have a problem with getting the amount of childs in a XML structure,
the strucure is somewhat like the following:
<?xml version="1.0" encoding="iso-8859-1"?>
<cms>
<num>21</num>
<xmlnames>
<field>id</field>
<field>name</field>
<field>availablefrom</field>
<field>availableuntill</field>
<field>owner</field>
</xmlnames>
</cms>
If I use the following to get te amount of childs for xmlnames I get an
amount of 11:
xmlObj.responseXML.getElementsByTagName('xmlnames' )[0].childNodes.length
Is this wrong or maybe there is a better / other way of counting the
child amount?
View 3 Replies
View Related
Jan 7, 2007
I am starting to learn using javascript on DOM. One of the first things
I tested was listing all the child nodes from an element. Like ->
*html code:
<div id="pagetitle">
<span>My Text</span>
</div>
In my javascript I tried to list all the child nodes from <div>, Firefox
and Opera gave me 3 -- 1)text node with a null value, 2)span, 3)text
node with a null value.
It look to me that the browsers treated the line break as a text node
with no value!!
If I modified the html code to :
<div id="pagetitle"><span>My Text</span></div>
Then the browsers gave me the right answer: 1
They still gave me a wrong answer of 3 if I put a space around the
<spanelement like this:
<div id="pagetitle"<span>My Text</span</div>
What did I do wrong? I would still want the elements to be on their own
lines.
View 2 Replies
View Related
May 20, 2005
I wanna get all the text nodes of the children of an element. The goal is to get an array with all the textNodes in each cell of a table, without any other nodes that might ocure whithin that cell (<p>, <br> etc...)
I mean if:
<td>12</td>
<td>1<p>23<b>34</b>5</p>6</td>
I need:
var txt = new Array()
txt[0] = ཈'
txt[1] = ?'
Now I had to circle through all the childNodes to extract all the text nodes. I have build a function, but something is wrong in the code, and I don't sense what. I need soime fresh eyes, any ideeas? Where's the mistake?:
<script type="text/javascript">
function checkCell(){
var allC = document.getElementById('tab').getElementsByTagName('td');//cells' collection
var txt = new Array()
for(var i=0;i<allC.length;i++){
txt[i]=''
while(allC[i].hasChildNodes()){
var chC = allC[i].childNodes;
for(var j=0;j<chC.length;j++){
if(chC[j].nodeType==3){
txt[i]+=chC[j].data;
}
}
allC[i]=allC[i].childNodes;
}
}
alert(txt[1])
}
onload=checkCell;
</script>
View 8 Replies
View Related
Mar 14, 2006
I have a script that automatically makes the class change for an input field onFocus. Everything works in both IE and Firefox with the inputs, but I am having trouble with an image inside of a link in Firefox. I am using a link instead of a input type="submit" for IE reasons. Code:
View 7 Replies
View Related
Jul 19, 2005
if I have:
<form id='form1'>
<input id='one' value=''>
<input id='two' value=''>
</form>
is there a way for me to check the child nodes of the <form> element for a specific id. in other words, can I check if form1 contains an element with id 'one' for example?
View 17 Replies
View Related
Nov 23, 2005
I have a div 'readroot' that I clone. I change the change the id and
name of the childnodes of 'readroot' to the original name plus a
number(counter).
The problem is I have i have a div 'serials' inside 'readroot' and the
childnodes of 'readroot' are not modified with the current function i have.
What is the best way to modify the childnodes of the div serials?
I guess i could put another for loop inside the for loop of the
moreFields function but i am thinking a recursive function could do it. Code:
View 2 Replies
View Related
Nov 11, 2010
I have a javascript for a tree view but i need to change it according to the requirement. Lets start with example with the treeview as follow:
1 Door phone
1.1 Ready Kits
1.1.1 Audioset
1.1.2 Videoset
[Code]....
Now the thing is in the current treeview a single category is open at a time. like if 1.1.1 is open 1.1.2 will b closed and similarly if 1.1 is open...1.2 will b closed. But i want that when i click on 1(Door phone) ie Door phone...evry node should be opened instead of just one similary when i click on 2(CCTV), all its node should be opened.
View 7 Replies
View Related
Aug 16, 2006
From what I've read, everything in the DOM is a node. Basically there are three types of nodes: text, element and attribute (there are more node types but these are the most common).
Let's say I have the following html:
<html>
<form>
<p></p>
</form
</html>
Then this javascript:
var forms = document.getElementsByTagName("form")
var form = forms[0];
alert(form.childNodes.length); /* output is 3 */
I would think that the output should be 2 as I only see 2 childNodes for the form object: the <p> element is an element node and the <p> element has a text node, so that's a total of 2 nodes. Where is the 3rd one comming from.
To add to the confusion, if I change the html to:
<html>
<form>
<p title="jeff" id="22"></p>
</form
</html>
The above javascript still outputs 3. I would think that the output is 4:
- 1st node is the <p> element
- 2nd node is the <p> element's attribute node "title"
- 3rd node is the <p> element's attribute node "id"
- 4th node is the <p> element's text node
Obviously I'm not correctly comprehending how childNodes are determined.
View 7 Replies
View Related
Sep 21, 2006
I want to count the number of childnodes, when i run this script in mozilla i get a different total for the number of childnodes from numkids then when the script runs in IE. Why is this? How Can I get the same number. I want to loop though an objects child elements setting them to invisible or visible
<script type="text/javascript"><!--
function rec(n) {
var kids = n.childNodes;
var numkids = kids.length;
for(var i = numkids-1; i>=0; i--)
{
// sets child to hidden
alert(numkids);
alert(kids[i].nodeValue);
//kids[i].style.visibility = 'hidden'
}}
var a = document.getElementById('commentholder0');
// this function loops though the parts and makes then invisiable so you cant see them overlap
rec(a);
</script>
My html is here:
<ul id= "commentholder0" >
<li id="comment1">this is a test</li>
<li id="comment2">this 2 is a test</li>
</ul>
View 2 Replies
View Related
Jan 11, 2011
I need to find the length of the childNode "city" to a particular "region" in the below XML.
<?xml version="1.0" encoding="ISO-8859-1" ?>
<Country Name="Singapore">
<Region Name="East">
<City Name="Pune">
<Dealer Name="XYZ" Type="A" Contact="9890455555" PinCode="123456"/>
<Dealer Name="ABC" Type="B" Contact="9890433333" PinCode="654321"/>
<Dealer Name="DEF" Type="A" Contact="9890422222" PinCode="867901"/>
</City>
<City Name="Mumbai">
<Dealer Name="dealer1" Type="A" Contact="9890455555" PinCode="123456"/>
<Dealer Name="dealer2" Type="B" Contact="9890433333" PinCode="654321"/>
<Dealer Name="dealer3" Type="A" Contact="9890422222" PinCode="867901"/>
</City></Region>
<Region Name="North">
<City Name="Delhi">
<Dealer Name="XYZ" Type="A" Contact="9890455555" PinCode="123456"/>
<Dealer Name="ABC" Type="B" Contact="9890433333" PinCode="654321"/>
<Dealer Name="DEF" Type="A" Contact="9890422222" PinCode="867901"/>
</City>
<City Name="Jammu">
<Dealer Name="dealer1" Type="A" Contact="9890455555" PinCode="123456"/>
<Dealer Name="dealer2" Type="B" Contact="9890433333" PinCode="654321"/>
<Dealer Name="dealer3" Type="A" Contact="9890422222" PinCode="867901"/>
</City></Region></Country>
Example the Region is East it has 2 cities below. I need to get this length using JS.
I tried doing x=xmlDoc.getElementsByTagName("City").length;
But it counts all the city elements present i.e. it returns 4. How to get the length of the "City" element particular to a "Region" element.
View 10 Replies
View Related
Jul 23, 2005
i'm working on a portion of a CMS that allows content-admins to browse
a product list, and add individual products into the taxonomy by
clicking checkboxes next to categories they might belong in.
since the taxonomy is a rather long list, i'm hiding and showing divs
for the secondary and tertiary links, so when a user clicks on the
checkbox for the parent category, the children appear in a second (and
third) div, with checkboxes of their own.
however, i'd like for the secondary and third level checkboxes to
become unchecked when the parent is. i've tried addressing them in
numerous ways, but something consistently gets lost, in that i keep
getting "x doesn't have any properties" errors.
ie:
var parentnode = document.getElementById(divName);
var allMyChildren = parentnode.childNodes.getElementsByName("INPUT");
alert(allMyChildren.length);
this returns the proper length, but then
for (var i=0;i < allMyChildren.length;i++) {
var chklist = allMyChildren[i];
if (chklist.type == "checkbox") {
// uncheck it
}
}
this consistently returns that chklist has no properties...
View 7 Replies
View Related
May 15, 2010
Is there a way to calculate the .offsetLeft or .left of a character in a string relative the element that contains the string? I'm just trying to wrap each character in an element and position the characters independently, so I have to set the .position to absolute, and set the .left and .top on each element as I create it so I can move the elements later on.
View 1 Replies
View Related
Mar 25, 2006
I have created a function.
function unHide (fieldname)
{
.... not important...
document.form1.fieldname.style.visibility = 'visible'
}
I have a field name called country in a form.
When the onclick="unHide('country')" is used then the above function
does not work
but if i change the following line within the function
document.form1.country.style.visibility = 'visible' then it works.
What am i doing wrong.
View 5 Replies
View Related
Aug 8, 2010
I am looking for a custom pop up box, but there is only 3 kinds (Alert, Confirm, Prompt). Neither of those will work.
View 13 Replies
View Related
May 9, 2007
I've tested it in most recent versions of IE, FF, Opera, and Safari.
The first parameter is the alert's text, if a second parameter is passed, it is the alert's title, else it will just have "Alert" in the title.
You can fire the function as many times as you like, any alert's thrown after the first will set themselves on top of each other slightly staggered much like the built in alert.
The alert will automatically be placed in a visible place regardless of where the page has scrolled. They will also stay in that same place in relation to the screen if the user scrolls after the alert has fired.
The top most alert is the only one clickable and moveable until it has been acknowledged (Much like a regular alert).
The benefit of this is that it does not freeze the user's interface once the alert is thrown.
Here's the code:
Javascript:
//*****************************
// Custom Alert Box
// Free to use with credits in tact.
// Written By Adam Matthews aka Basscyst
//AdamDMatthews@Gmail.com
//*****************************
function msgBox(msg,hdr){
if(!document.getElementById('alerts')){
var div=document.createElement('div');
div.setAttribute('id','alerts');
document.body.appendChild(div);
}
var div=document.createElement('div');
div.className="alertbox";
var h3=document.createElement('h3');
h3.className="alerttitle";
var p=document.createElement('p');
p.className="alerttxt";
var footdiv=document.createElement('p');
footdiv.className="alertfoot";
div.appendChild(h3);
div.appendChild(p);
div.appendChild(footdiv);
var but=document.createElement('input');
but.setAttribute('type','button');
but.className='alertbut'
but.setAttribute('value','OK');
footdiv.appendChild(but);
var hdr=(hdr) ? hdr : "Alert!";
h3.appendChild(document.createTextNode(hdr));
var cut=msg.split("
");
var len=cut.length;
p.appendChild(document.createTextNode(cut[0]));
for(var i=1;i<len;i++){
p.appendChild(document.createElement('br'));
p.appendChild(document.createTextNode(cut[i]));
}
document.getElementById('alerts').appendChild(div);
window.onscroll=function(){
placeAlerts();
}
window.onresize=function(){
placeAlerts();
}
placeAlerts();
}
var posX;
var posY;
function mouseXY(e){
if (!e){
var e = window.event;
}
if (e.clientX)
{
posX = e.clientX + document.documentElement.scrollLeft;
posY = e.clientY + document.documentElement.scrollTop;
}
else
{
posX = Math.max(e.pageX,0);
posY = Math.max(e.pageY,0);
}
var coord=new Array();
return coord;
}
if(document.captureEvents){
document.captureEvents(Event.MOUSEMOVE)
}
function placeAlerts(){
var alerts=document.getElementById('alerts').getElementsByTagName('div');
var len=alerts.length;
var x=0;
var y=300;
var w=document.body.clientWidth;
var h=document.body.clientHeight;
for(var i=0;i<len;i++){
alerts[i].style.zIndex=i+100;
alerts[i].getElementsByTagName('h3')[0].onmousedown="";
alerts[i].getElementsByTagName('input')[0].onclick="";
if(window.pageYOffset){
alerts[i].style.top=y+(window.pageYOffset)+'px'
}else{
alerts[i].style.top=y+(document.documentElement.scrollTop)+'px'
}
alerts[i].style.left=(w / 2)- (343 / 2) + x +'px';
x=x+15;
y=y+15;
if(i==len-1){
var h3=alerts[i].getElementsByTagName('h3')[0];
var but=alerts[i].getElementsByTagName('input')[0];
but.onclick=function(){
this.parentNode.parentNode.parentNode.removeChild(this.parentNode.parentNode);
var alerts=document.getElementById('alerts').getElementsByTagName('div');
if(alerts.length==0){
window.onscroll="";
}
placeAlerts();
}
h3.onmousedown=function(event){
this.parentNode.setAttribute('id','active_alert');
var event=(event)?event:arguments[0];
mouseXY(event);
start_x=posX;
start_left=document.getElementById('active_alert').style.left.replace('px','');
adjust=posX-start_left;
document.onmousemove=function(event){
var event=(event)?event:arguments[0];
mouseXY(event);
var obj=document.getElementById('active_alert');
obj.style.left=posX-adjust+'px'
obj.style.top=posY-5+'px'
};
}
h3.onmouseup=function(){
document.onmousemove="";
this.parentNode.setAttribute('id','');
}
}
}
}
Function Call
msgBox("You have done something real bad!
So Bad, oh so bad!","Ya shoudn't of done it boy!")
CSS
.alertbox{
width:344px;
position:absolute;
padding:0px;
margin:0px;
border:solid 1px #FFFFFF;
}
.alerttitle{
background-color:#9B1317;
color:#FFFFFF;
font-size:12px;
width:344px;
cursor:pointer;
text-align:center;
margin:0px;
padding:0px;
}
.alerttxt{
background-color:#E7EFF7;
margin:0px;
font-size:11px;
text-align:center;
padding:0px;
width:344px;
}
.alertfoot{
background-color:#9B1317;
text-align:center;
width:344px;
margin:0px;
padding:0px;
}
.alertbut{
margin-top:2px;
cursor:pointer;
}
View 3 Replies
View Related
Jul 23, 2005
I know that I can read/write custom properties of an object by using
the following:
Setting:
document.all['Control'].customProp = "this";
Getting:
document.all['Control'].customProp;
Is there a way I can run code when this custom property is set. Or
perhaps there is a way to create a custom method?
Example:
<span id="MySpan"><input type="text"></span>
I'd the property:
document.all['MySpan'].enabled = true;
To automatically do this:
document.all['MySpan'].controls[0].disabled = !thevalue;
OR the method
document.all['MySpan'].enable();
To do this:
document.all['MySpan'].disabled = false;
View 5 Replies
View Related
Jul 23, 2005
I try to associate DOM nodes with other objects. Assigning custom
properties to DOM nodes works in Firefox and Safari. It also works with
HTML nodes in IE6. However, it appears not to work with XML nodes that
are part of trees returned by XMLHttpRequest. How can I work around this
limitation? For XML nodes, I need to be able to associate at most one
object with each node.
The syntax I am using is
node.customproperty = value
View 2 Replies
View Related
Nov 23, 2005
I have a custom HTML tag: <custom>text is here</custom>
I can do anything I would like in terms of calling methods with mozilla
but not IE 6. For instance calling appendChild in IE results in an
error. The innerHTML property is blank even though there is text
between the tag.
Is there a work around for IE. What gives with IE and being able to
access and manipulate custom tags??
View 1 Replies
View Related
Dec 5, 2006
I would like to include extra "hidden" information in a generated HTML page
that can be used by javascript functions.
I realise that most browsers seem to ignore any tags and attributes they
don't understand, but from what I can tell the standards do not allow me to
make up my own tags or attributes as they will fail validation.
is there any standard element name that can be used for such a purpose i.e.
passes validation but never produces any output (and ideally allows nested
elements to be rendered normally too)...
View 10 Replies
View Related
Jul 20, 2005
I want to have a custom button change appearance when pressed and then
call a function and change back to its original appearance when released.
here's what i have now, which works mostly. "drop" is my handler for the
button, its argument tells me which button was pressed. i have a number
of these buttons and they are organized in a table.
there is a fair amount of superstition here, the result of many tiny
experiments i ended up with this which seems to work best: Code:
View 1 Replies
View Related
Jul 20, 2005
Does anyone know of a way to wrap custom tags around selected text
using execCommand or otherwise?
I am developing a rich text editor for use in a web site and while
there are a few decent ones already floating around I need to
implement a few extra bits of functionality. Specifically tool tips.
Idealy I'd like to wrap custom tags around selected text using
execCommand. Ie "Selected Text" becomes:
"<a title='User inputed tooltip'>Selected Text</a>".
Any ideas?
View 1 Replies
View Related
Jul 20, 2005
I would like to use input type file, but i would like to put any file in it
when i go on the page for example when user go back after try to submit
imagine any form to fill for send information...but after the user
validate....one on the fields is bad...then the user must be correct this
field.....But i don't want another fields are empty. The user must just
correct one fields and keep another fields
View 3 Replies
View Related
Feb 19, 2010
I'm using the jquery in place editor, and I need to get the value of a custom attribute in order to send it with the form. The jquery I have is as folder... (the bit I'm having trouble with is highlighted)
$(".edit").editInPlace({
url: "./server.php",
params: "folder=" + $(this).attr('folder')
//show_buttons: true
//$('.edit').attr('folder')
});
And the html is as follows:
<span class="edit" folder="folderName">text to edit</span>
As you can see, I need to get jquery to get the attribute 'folder' value, in this case the value returned would be 'folderName'.
View 2 Replies
View Related
Feb 21, 2010
I was reading about delay() in the API ref and it mentioned it used the standard effects queue or a custom queue, but didn't illustrate how you set up a custom queue.
View 2 Replies
View Related