⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jabber_x_data.js

📁 WEB IM 实现 j2ee项目的IM功能 可继承到现有的系统当中
💻 JS
字号:
function genJabberXDataTable(x) {	var html = '<input type=hidden name="jwchat_form_type" value="jabber:x:data">';	if (x.getElementsByTagName('title').item(0))		html += "<h1>"+x.getElementsByTagName('title').item(0).firstChild.nodeValue.replace(/\n/g,"<br>")+"</h1>";	if (x.getElementsByTagName('instructions').item(0))		html += x.getElementsByTagName('instructions').item(0).firstChild.nodeValue.replace(/\n/g,"<br>");	if (!x.getElementsByTagName('field').length)		return html;	html += '<table width="100%">';	for (var i=0; i<x.getElementsByTagName('field').length; i++) {		var aField = x.getElementsByTagName('field').item(i); 		html += "<tr>";		switch (aField.getAttribute('type')) {		case 'hidden':			if (aField.firstChild && aField.firstChild.firstChild)				html += "<td colspan=2><input type=hidden name='"+aField.getAttribute('var')+"' value='"+aField.firstChild.firstChild.nodeValue+"'></td>";			break;		case 'fixed':			html += "<td colspan=2><b>"+aField.firstChild.firstChild.nodeValue+"</b></td>";			break;		case 'jid-single':		case 'text-single':			html += "<th>" + aField.getAttribute('label') + "</th>";			html += "<td>";			html += "<input type=text size='24' name='" + aField.getAttribute('var') + "'";			if (aField.firstChild && aField.firstChild.firstChild)				html += " value='" + aField.firstChild.firstChild.nodeValue + "'";			html += ">";			html += "</td>";			break;		case 'text-private':			html += "<th>" + aField.getAttribute('label') + "</th>";			html += "<td>";			html += "<input type=password size='24' name='" + aField.getAttribute('var') + "'";			if (aField.firstChild && aField.firstChild.firstChild)				html += " value='" + aField.firstChild.firstChild.nodeValue + "'";			html += ">";			html += "</td>";			break;		case 'jid-multi':		case 'text-multi':			html += "<th valign=top>" + aField.getAttribute('label') + "</th>";			html += "<td>";			html += "<textarea cols=24 rows=4 name='" + aField.getAttribute('var') + "'>";			if (aField.firstChild && aField.firstChild.firstChild)				html += aField.firstChild.firstChild.nodeValue;			html += "</textarea>";			html += "</td>";			break;		case 'list-single':			html += "<th>" + aField.getAttribute('label') + "</th>";			html += "<td>";			html += "<select name='" + aField.getAttribute('var') + "'>";			if (aField.childNodes.length) {				var val;				for (var j=0; j<aField.childNodes.length; j++) 					if (aField.childNodes.item(j).nodeName == 'value') 						val = aField.childNodes.item(j).firstChild.nodeValue;				for (var j=0; j<aField.childNodes.length; j++) {					if (aField.childNodes.item(j).nodeName == 'option') {						html += "<option value='" + aField.childNodes.item(j).firstChild.firstChild.nodeValue + "'"; 						if (val && val == aField.childNodes.item(j).firstChild.firstChild.nodeValue) 							html += " selected";						html += ">"+aField.childNodes.item(j).getAttribute('label')+"</option>";					}				}			}			html += "</select>";			html += "</td>";			break;		case 'list-multi':			html += "<th>" + aField.getAttribute('label') + "</th>";			html += "<td>";			html += "<select name='" + aField.getAttribute('var') + "' "				+ "multiple='true'>";			if (aField.childNodes.length) {				for (var j=0; j<aField.childNodes.length; j++) {					if (aField.childNodes.item(j).nodeName == 'option') {						html += "<option value='" + aField.childNodes.item(j).firstChild.firstChild.nodeValue + "'";// 						if (x.o[i].value == x.o[i].o[j].value)// 							html += " selected";						html += ">"+aField.childNodes.item(j).getAttribute('label')+"</option>";					}				}			}			html += "</select>";			html += "</td>";			break;		case 'boolean':			html += "<th>" + aField.getAttribute('label') + "</th>";			html += "<td>";			html += "<input type=checkbox name='" +aField.getAttribute('var') + "'";			if (aField.firstChild && aField.firstChild.firstChild && aField.firstChild.firstChild.nodeValue == '1')				html += " checked";			html += ">";			html += "</td>";			break;		default:			srcW.Debug.log("unknown type: " + aField.getAttribute('type'),1);			break;		} 		html += "</tr>";	}	html += "</table>";	return html;}function genJabberXDataReply(form) {	var xml = "<x xmlns='jabber:x:data' type='submit'>";	var els = form.elements;	for (var i=0; i<els.length; i++) {		if (els[i].name == '' || els[i].value == '' || els[i].name == 'jwchat_form_type')			continue;		xml += "<field var='" +els[i].name + "'><value>";		if (els[i].type == 'checkbox')			xml += (els[i].checked) ? '1':'0';		else			xml += els[i].value;		xml += "</value></field>";	}	xml += "</x>";	return xml;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -