2009-05-24 5 views
0

Ce que mon code essaye de faire est d'ajouter un nouveau groupe s'il n'est pas encore créé, eh bien, ça marche bien maintenant mais je veux aussi ouvrir une nouvelle fenêtre popup dès que le groupe est créé, incitant l'utilisateur à inviter d'autres, mais je ne semble pas faire fonctionner mon travail, aucune idée sur la façon de le faire fonctionner?créer une fenêtre pop-up à l'intérieur de la fonction

grâce

<html> 
<head> 
<script type="text/javascript"> 

function addGroup() 
{ 
    x=document.getElementById("group").getElementsByTagName("p"); 
    groups=document.getElementById("groupName"); 
    var j=0,i=0; 


    if (groups.value=="") 
    { 
     alert('must create one group'); 
    } 



    for (i=0;i<x.length;i++) 
    { 
    if (x[i].innerHTML == groups.value) 
    { 
     alert('the group name is already created'); 
     return false; 
    } 
    } 



    if (!j) 
    { 
     var newNode=document.createElement('p'); 
     var newString=document.createTextNode(groups.value); 
     newNode.appendChild(newString); 
     x[0].parentNode.appendChild(newNode); 
     newWindow(); 
    } 
} 

function newWindow() 
{ 
    window.open('http://invite Others.html','invite 
         others','width=400,height=200,toolbar=yes,        
     location=yes,directories=yes,status=yes,menubar=yes,scrollbars=yes,copyhistory=yes, 
          resizable=yes'); 
     winObj.focus(); 
} 
</script> 

</head> 
<body> 

<div id="group"> 
<ul> 
    <p>Group03</p> 
    <p>Group02</p> 
</ul> 
</div> 

<p><input type="text" id="groupName" size="84" maxlength="84" value=""/></p> 
<p><input type="button" value="create" onclick="addGroup()" /></p> 
<p><input type="button" value="remove" onclick="removeNo()"/> </p> 
</body> 
</html> 

Répondre

1

Votre question semble être window.open(). http://invite other.html n'est pas une adresse Web valide, donc elle renvoie une erreur. Firebug a retourné ceci quand je clique sur créer.


uncaught exception: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMJSWindow.open]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: http://localhost/ :: newWindow :: line 43" data: no] 

Toutefois, si vous utilisez http://localhost/invite Others.html il fonctionne très bien. Il suffit donc d'ajouter votre nom d'hôte après le htttp: // et vous devriez être prêt à partir. Que voulez-vous dire par nom d'hôte?

+0

est-ce juste en insérant le mot "localhost". J'ai essayé mais ça ne semble pas fonctionner. l'invitation others.html est dans le même répertoire que ce fichier. Ne pourrais-je pas simplement utiliser "inviter les autres.html", mais pourquoi cela ne fonctionne pas? sory new to javascript –

+0

si vous aviez window.open ('newfile.html') qui fonctionnerait. Supprimez la partie HTTP du chemin du fichier ou utilisez votre nom DNS Ex: http://www.google.com/myfile.js – Ballsacian1

Questions connexes