電子メールの種類に応じてテキストボックスに電子メールの値を解析する方法を教えてください。私は私のテキストボックスに電子メールの値を解析するいくつかの助けが必要です。XULのJavaScriptでXMLファイルの解析から親ノードのサブファイルの値を取得する方法
<CONTACT>
<PDE-Identity>N65567</PDE-Identity>
<FirstName>Rangarajkarthik</FirstName>
<LastName>karthik Rangaraj</LastName>
<Facebook-ID/>
<EMAIL>
<Type>gmail</Type>
<Value>[email protected]</Value>
<Type>yahoo</Type>
<Value>[email protected]</Value>
</EMAIL>
</CONTACT>
ループを使用してXULのテキストボックスにtypeの値を解析するにはどうすればよいですか?一部の連絡先ノードにはGmailはなく、一部の連絡先ノードにはYahooのメールアドレスはありません。
var str=x[i].getElementsByTagName("Value")[0].childNodes[0].nodeValue;
document.getElementById("gmail").value=str;
それは働いていない:私はこれは私がこれまで持っているものである
<row>
<label value="Gmail"/>
<textbox id="gmail" value=""/>
</row>
<row>
<label value="Yahoo"/>
<textbox id="yahoo" value=""/>
</row>
...ここは本当に混乱しています。
XULコード:
<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" oncommand="init();">
<grid>
<columns>
<column flex="1"/>
<column flex="4"/>
<column flex="4"/>
<column flex="4"/>
<column flex="4"/>
</columns>
<rows>
<row>
<label control="" value="Select PDE-ID:"/>
<menulist id="List" oncomman="">
<menupopup id="Popup">
</menupopup>
</menulist>
</row>
</rows>
</grid>
<label control="" accesskey="" value=""/>
<grid>
<columns>
<column flex="1"/>
<column flex="4"/>
<column flex="4"/>
<column flex="4"/>
<column flex="4"/>
</columns>
<rows>
<row>
<label value="PDE-Identity"/>
<textbox id="pde" value=""/>
</row>
<row>
<label value="FirstName"/>
<textbox id="fname" value=""/>
</row>
<row>
<label value="LastName"/>
<textbox id="lname" value=""/>
</row>
<row>
<label value="Gmail"/>
<textbox id="gmail" value=""/>
</row>
<row>
<label value="Yahoo"/>
<textbox id="yahoo" value=""/>
</row>
<row>
<label value="Alcatel-Lucent"/>
<textbox id="alcatel-lucent" value="" />
</row>
<row>
<label value="URL"/>
<textbox id="facebook" value="" />
</row>
<row>
<label value="Facebook-ID"/>
<textbox id="fid" value="" />
</row>
</rows>
</grid>
<label value=""/>
<grid>
<columns>
<column flex=""/>
<hbox align="center" >
<button id="save" label="next" oncommand="next()" />
<button id="cancel" label="previous" oncommand="previous()"/>
<button id="delete" label="Merge" oncommand="delete();"/>
</hbox>
</columns>
</grid>
<separator/>
<text value="© 2011"/>
<separator/>
<script type="application/x-javascript">
<![CDATA[
var objXMLDoc = document.implementation.createDocument('','doc',null);
var objXMLHTTP = new XMLHttpRequest();
objXMLHTTP.open("GET", "file://D:/xmlparserinxul/final.xml", false);
objXMLHTTP.send(null);
objXMLDoc = objXMLHTTP.responseXML;
var objNodeList = objXMLDoc.getElementsByTagName("PDE-Identity");
for (var i=0; i<objNodeList.length; i++){
var menuPopup=document.getElementById('Popup');
var menu1=document.createElement("menuitem");
menu1.setAttribute("label",'objNodeList');
menuPopup.appendChild(menu1);
}
var x = objXMLDoc.getElementsByTagName("CONTACT");
i=0;
function init()
{
var str=x[i].getElementsByTagName("PDE-Identity")[0].childNodes[0].nodeValue;
document.getElementById("pde").value=str;
var str=x[i].getElementsByTagName("FirstName")[0].childNodes[0].nodeValue;
document.getElementById("fname").value=str;
var str=x[i].getElementsByTagName("LastName")[0].childNodes[0].nodeValue;
document.getElementById("lname").value=str;
/*var str=x[i].getElementsByTagName("Type")[0].childNodes[0].nodeValue;
document.getElementById("gmail").value=str;
var str=x[i].getElementsByTagName("Type")[0].childNodes[0].nodeValue;
document.getElementById("yahoo").value=str;
var str=x[i].getElementsByTagName("Type")[0].childNodes[0].nodeValue;
document.getElementById("alcatel-lucent").value=str; */
var str=x[i].getElementsByTagName("URL")[0].childNodes[0].nodeValue;
document.getElementById("facebook").value=str;
var str=x[i].getElementsByTagName("Facebook-ID")[0].childNodes[0].nodeValue;
document.getElementById("fid").value=str;
}
function next()
{
document.getElementById('facebook').value='';
document.getElementById('fid').value='';
//alert('fool');
if (i<x.length-1)
{
i++;
init();
}
}
function previous()
{
document.getElementById('facebook').value='';
document.getElementById('fid').value='';
if (i>0)
{
i--;
init();
}
}
]]>
</script>
</window>
私のXMLファイル:
<?xml version="1.0" encoding="UTF-8"?>
<CONTACTS>
<CONTACT>
<PDE-Identity>N65539</PDE-Identity>
<FirstName>Arun_niit</FirstName>
<LastName>Arun_niit</LastName>
<Facebook-ID/>
<EMAIL>
<Type>yahoo</Type>
<Value>[email protected]</Value>
</EMAIL>
</CONTACT>
<CONTACT>
<PDE-Identity>N65546</PDE-Identity>
<FirstName>FodenBen'</FirstName>
<LastName>Ben' Foden</LastName>
<URL>http://www.facebook.com/profile.php?id=100002440474277</URL>
<Facebook-ID>100002440474277</Facebook-ID>
<EMAIL/>
</CONTACT>
<CONTACT>
<PDE-Identity>N65553</PDE-Identity>
<FirstName>GhorbelMahmoud</FirstName>
<LastName>Mahmoud Ghorbel</LastName>
<Facebook-ID/>
<EMAIL>
<Type>alcatel-lucent</Type>
<Value>[email protected]</Value>
</EMAIL>
</CONTACT>
<CONTACT>
<PDE-Identity>N65560</PDE-Identity>
<FirstName>keyankarthik</FirstName>
<LastName>karthik keyan</LastName>
<Facebook-ID/>
<EMAIL>
<Type>yahoo</Type>
<Value>[email protected]</Value>
</EMAIL>
</CONTACT>
<CONTACT>
<PDE-Identity>N65567</PDE-Identity>
<FirstName>Rangarajkarthik</FirstName>
<LastName>karthik Rangaraj</LastName>
<Facebook-ID/>
<EMAIL>
<Type>gmail</Type>
<Value>[email protected]</Value>
<Type>yahoo</Type>
<Value>[email protected]</Value>
</EMAIL>
</CONTACT>
<CONTACT>
<PDE-Identity>N65576</PDE-Identity>
<FirstName>ReddyAkky</FirstName>
<LastName>Akky Reddy</LastName>
<Facebook-ID/>
<EMAIL>
<Type>gmail</Type>
<Value>[email protected]</Value>
</EMAIL>
</CONTACT>
<CONTACT>
<PDE-Identity>N65583</PDE-Identity>
<FirstName>SandfordFrankie</FirstName>
<LastName>Frankie Sandford</LastName>
<URL>http://www.facebook.com/FrankieSandfordApprovedPage</URL>
<Facebook-ID/>
<EMAIL/>
</CONTACT>
<CONTACT>
<PDE-Identity>N65590</PDE-Identity>
<FirstName>TheSatsRochelle</FirstName>
<LastName>Rochelle TheSats</LastName>
<URL>http://www.facebook.com/profile.php?id=100002487211054</URL>
<Facebook-ID>100002487211054</Facebook-ID>
<EMAIL/>
</CONTACT>
<CONTACT>
<PDE-Identity>N65597</PDE-Identity>
<FirstName>KumarVeera</FirstName>
<LastName>Vea_Kumar</LastName>
<Facebook-ID/>
<EMAIL>
<Type>yahoo</Type>
<Value>[email protected]</Value>
</EMAIL>
</CONTACT>
</CONTACTS>
ほんの少しの発言:あなたのXMLファイルの本当の内容をそのまま投稿するべきではないかもしれません。私はとても幸せではないので、Webに投稿された自分のメールアドレスを見つけてください... – revers
メールアドレスが変更されます。私は誰かが私を助けることを願って.... – user838691