Hướng dẫn display formatted xml in html textarea - hiển thị xml được định dạng trong html textarea

2

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi có một trang mà người dùng có thể thêm đánh dấu XML vào đầu vào vùng văn bản. Tôi muốn sau khi họ nhập nó rằng nó được mã hóa màu và được định dạng vì XML sẽ trông trong một IDE như Visual Studio. Bất cứ ai cũng biết về một tập lệnh hoặc công cụ cho phép điều này trong trình duyệt phía máy khách?

hỏi ngày 19 tháng 6 năm 2009 lúc 17:13Jun 19, 2009 at 17:13

Hướng dẫn display formatted xml in html textarea - hiển thị xml được định dạng trong html textarea

James Alexanderjames AlexanderJames Alexander

5.98210 Huy hiệu vàng41 Huy hiệu bạc56 Huy hiệu Đồng10 gold badges41 silver badges56 bronze badges

Hãy xem Codemirror, một trình soạn thảo cao trong cú pháp trong JavaScript cho các trình duyệt. Đây là một ví dụ cho chỉnh sửa XML.

Đã trả lời ngày 19 tháng 6 năm 2009 lúc 17:23Jun 19, 2009 at 17:23

Brian Agnewbrian AgnewBrian Agnew

264K36 Huy hiệu vàng330 Huy hiệu bạc434 Huy hiệu Đồng36 gold badges330 silver badges434 bronze badges

0

Câu trả lời ngắn gọn: Bạn không thể.you can't.

Không phải trong một TEXTAREA, như người ở đây trong như vậy.

Ví dụ trong SO rất tốt, vì nó có TEXTAREA nơi chúng tôi nhập văn bản và hộp DIV bên dưới nơi bạn có thể thấy những gì bạn gõ được định dạng.

Bạn cũng có thể trải qua contentEditable = "true", nhưng đó là một nỗi đau thực sự khi làm điều đó đúng cách ...

Đã trả lời ngày 19 tháng 6 năm 2009 lúc 17:19Jun 19, 2009 at 17:19

Một lựa chọn tốt sẽ là thế này: Vkbeautify

Đây là một ví dụ:

(function() {

function createShiftArr(step) {

	var space = '    ';
	
	if ( isNaN(parseInt(step)) ) {  // argument is string
		space = step;
	} else { // argument is integer
		switch(step) {
			case 1: space = ' '; break;
			case 2: space = '  '; break;
			case 3: space = '   '; break;
			case 4: space = '    '; break;
			case 5: space = '     '; break;
			case 6: space = '      '; break;
			case 7: space = '       '; break;
			case 8: space = '        '; break;
			case 9: space = '         '; break;
			case 10: space = '          '; break;
			case 11: space = '           '; break;
			case 12: space = '            '; break;
		}
	}

	var shift = ['\n']; // array of shifts
	for(ix=0;ix<100;ix++){
		shift.push(shift[ix]+space); 
	}
	return shift;
}

function vkbeautify(){
	this.step = '    '; // 4 spaces
	this.shift = createShiftArr(this.step);
};

vkbeautify.prototype.xml = function(text,step) {

	var ar = text.replace(/>\s{0,}<")
				 .replace(/ or  -1) { 
				str += shift[deep]+ar[ix];
				inComment = true; 
				// end comment  or  //
				if(ar[ix].search(/-->/) > -1 || ar[ix].search(/\]>/) > -1 || ar[ix].search(/!DOCTYPE/) > -1 ) { 
					inComment = false; 
				}
			} else 
			// end comment  or  //
			if(ar[ix].search(/-->/) > -1 || ar[ix].search(/\]>/) > -1) { 
				str += ar[ix];
				inComment = false; 
			} else 
			//  //
			if( /^<\w/.exec(ar[ix-1]) && /^<\/\w/.exec(ar[ix]) &&
				/^<[\w:\-\.\,]+/.exec(ar[ix-1]) == /^<\/[\w:\-\.\,]+/.exec(ar[ix])[0].replace('/','')) { 
				str += ar[ix];
				if(!inComment) deep--;
			} else
			 //  //
			if(ar[ix].search(/<\w/) > -1 && ar[ix].search(/<\//) == -1 && ar[ix].search(/\/>/) == -1 ) {
				str = !inComment ? str += shift[deep++]+ar[ix] : str += ar[ix];
			} else 
			 // ... //
			if(ar[ix].search(/<\w/) > -1 && ar[ix].search(/<\//) > -1) {
				str = !inComment ? str += shift[deep]+ar[ix] : str += ar[ix];
			} else 
			//  //
			if(ar[ix].search(/<\//) > -1) { 
				str = !inComment ? str += shift[--deep]+ar[ix] : str += ar[ix];
			} else 
			//  //
			if(ar[ix].search(/\/>/) > -1 ) { 
				str = !inComment ? str += shift[deep]+ar[ix] : str += ar[ix];
			} else 
			//  //
			if(ar[ix].search(/<\?/) > -1) { 
				str += shift[deep]+ar[ix];
			} else 
			// xmlns //
			if( ar[ix].search(/xmlns\:/) > -1  || ar[ix].search(/xmlns\=/) > -1) { 
				str += shift[deep]+ar[ix];
			} 
			
			else {
				str += ar[ix];
			}
		}
		
	return  (str[0] == '\n') ? str.slice(1) : str;
}

window.vkbeautify = new vkbeautify();

})();

var xmlData = 'ToveJaniReminderDon\'t forget me this weekend!';
xmlData = vkbeautify.xml(xmlData);
$('textarea').val(xmlData);

Đã trả lời ngày 26 tháng 5 năm 2016 lúc 12:11May 26, 2016 at 12:11

MahavirmahavirMahavir

3224 Huy hiệu bạc7 Huy hiệu đồng4 silver badges7 bronze badges

0

Làm thế nào hiển thị dữ liệu XML trong HTML bằng cách sử dụng jQuery?

Đọc tệp XML với phương thức tải jQuery và hiển thị nó trong bảng HTML..
Tải tệp XML bằng phương thức tải jQuery ..
Hiển thị nó trong bảng HTML ..
Bảng HTML có hệ thống phân trang ..
Do hệ thống phân trang này, dữ liệu XML sẽ được hiển thị theo từng trang ..
Toàn bộ điều này sẽ dựa trên Ajax ..

Làm thế nào bao gồm tệp XML trong HTML?

Cách đơn giản để chèn mã XML vào tệp HTML là sử dụng thẻ. Thẻ XML thông báo, trình duyệt rằng nội dung sẽ được phân tích cú pháp và giải thích bằng trình phân tích cú pháp XML. Giống như hầu hết các thẻ HTML khác, thẻ có các thuộc tính.use the tag. The XML tag informs, the browser that the contents are to be parsed and interpreted using the XML parser. Like most other HTML tags, the tag has attributes.

Làm cách nào để xem dữ liệu XML?

Nếu tất cả những gì bạn cần làm là xem dữ liệu trong tệp XML, bạn sẽ gặp may.Chỉ cần mọi trình duyệt có thể mở tệp XML.Trong Chrome, chỉ cần mở một tab mới và kéo tệp XML qua.Ngoài ra, nhấp chuột phải vào tệp XML và di chuột qua "Mở bằng" sau đó nhấp vào "Chrome".In Chrome, just open a new tab and drag the XML file over. Alternatively, right click on the XML file and hover over "Open with" then click "Chrome".

Chúng ta có thể viết mã XML bằng HTML không?

Thẻ không chính thức được sử dụng để nhúng dữ liệu XML trong HTML.Lưu ý rằng thẻ là phần tử HTML, không phải là phần tử XML.Quần đảo dữ liệu có thể được liên kết với các yếu tố HTML (như bảng HTML).Trong ví dụ dưới đây, Đảo dữ liệu XML có "CDCAT" ID được tải từ tệp XML bên ngoài.. Note that the tag is an HTML element, not an XML element. Data Islands can be bound to HTML elements (like HTML tables). In the example below, an XML Data Island with an ID "cdcat" is loaded from an external XML file.