* 请教高手: 这段用C++很容易实现的, 如何用JS实现? 多个输入数据模板的问题

konfyt 2009-09-26 10:26:55
信息集模板, c++里面叫做类以及他的属性. JS该怎么做? 保存为字符串? <书名> <书代号> <价格>
用Form表单 <input type="text" name=book_name> ....等等

然后在网页 bool.html ,用JS动态插入3个信息集模板的代码 insertHTML. c++ 生成多个类实例就行了, 并可以给类取名.
A 书籍
B 书籍
C 书籍

----
Onload的代码里面, 我不知道有什么东西能重复一样的模板(他们ID和name相同), 在c++里面叫做类对象实例;
{
创建集合对象 A
<A>
insertHTML(template);
</A>

创建集合对象 B
<B>
insertHTML(template);
</B>

创建集合对象 C
<C>
insertHTML(template);
</C>

}



这样bool.html 就可以输入3个书籍的数据了, 以后我要增加一个, 就在OnLoad 里面多打一个.

保存提交时:

SaveBookInfo(var bookname)
{
var obj= GetDocument(bookname); //当然js没有这个函数, c++直接访问 A.xxx就行了
保存:obj.book_name
保存:obj.book_id
保存:obj.book_price
}


saveall()
{
SaveBookInfo("A");
SaveBookInfo("B");
SaveBookInfo("C");
}

---------------------------------------------------------------------------------
不知道表达清楚没有, 在VC里面, 我把输入数据做成 一个对话框(模板) class DlgTemplate, 然后用个大的对话框(网页) 包含3个 DlgTemplate 对象,就行了.

谁能帮我写成JS HTML代码啊? 因为某些原因不能用表格.

感激不尽!
...全文
118 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
mark620 2009-09-27
  • 打赏
  • 举报
回复
不断突破自我...
friendly_ 2009-09-27
  • 打赏
  • 举报
回复
写的很滥,大体参考一下。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
</HEAD>
<SCRIPT LANGUAGE="JavaScript">

function SaveBookInfo(formName){
if (document.forms[formName])
{
document.forms[formName].submit();
}

}
function SaveAll() {
for (var i=0;i<document.forms.length ;i++ )
{
document.forms[i].submit();
}
}

var formLen = 0;

function Book(name,id,price,formName,formAction,formMethod,formTarget) {

this.name = name || "book_name";
this.id = id || "book_id";
this.price = price || "book_price";
this.formName = formName || "frm"+formLen;
this.formAction = formAction || "" ;
this.formMethod = formMethod || "post";
this.formTarget = formTarget || "";
this.setFormName = function(formName) {this.formName= formName;}
}

function InsertHTML(book1) {
var frm = document.createElement("form");
frm.name = book1.formName;
frm.id = book1.formName;
frm.action = book1.formAction;

var bookNameEle = document.createElement("<input type='text' />");
bookNameEle.id = book1.name;
bookNameEle.name = book1.name;
frm.appendChild(bookNameEle);

var bookIdEle = document.createElement("<input type='text' />");
bookIdEle.name = book1.id;
bookIdEle.id = book1.id;
frm.appendChild(bookIdEle);

var bookPriceEle = document.createElement("<input type='text' />");
bookPriceEle.name = book1.price;
bookPriceEle.id = book1.price;
frm.appendChild(bookPriceEle);

var savebtn = document.createElement("input");
savebtn.type="button";
savebtn.value = "save";
savebtn.onclick = function(){ SaveBookInfo(book1.formName)};
frm.appendChild(savebtn);
document.body.appendChild(frm);

formLen++;
}

function addNewBook() {
var book = new Book();
var len = document.forms.length;
book.setFormName("frm"+len);
InsertHTML(book);

}
function test(){
var book1 = new Book("book_name","book_id","book_price","frm1","");
var book2 = new Book();
InsertHTML(book1);
InsertHTML(book2);


}

//document.ondblclick = function() {alert(document.body.outerHTML);}
</SCRIPT>
<BODY onload="test()">
<input type="button" value="ADD" onclick="addNewBook()" >
<input type="button" value="SAVE ALL" onclick="SaveAll()">
<br>
</BODY>
</HTML>


konfyt 2009-09-26
  • 打赏
  • 举报
回复

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<!-- TemplateBeginEditable name="doctitle" -->
<title>无标题文档</title>
<!-- TemplateEndEditable -->
<!-- TemplateBeginEditable name="head" --><!-- TemplateEndEditable -->
</head>

<body>
<!-- TemplateBeginRepeat name="RepeatRegionA" -->
<form id="book_info_A" name="book_info_A" method="post" action="">
<p>书籍名称
<input type="text" name="book_name" />
</p>
<p>价格
<input type="text" name="book_price" />
</p>
</form>
<!-- TemplateEndRepeat -->

<!-- TemplateBeginRepeat name="RepeatRegionB" -->
<form id="book_info_B" name="book_info_B" method="post" action="">
<p>书籍名称
<input type="text" name="book_name" />
</p>
<p>价格
<input type="text" name="book_price" />
</p>
</form>
<!-- TemplateEndRepeat -->

<!-- TemplateBeginRepeat name="RepeatRegionC" -->
<form id="book_info_C" name="book_info_C" method="post" action="">
<p>书籍名称
<input type="text" name="book_name" />
</p>
<p>价格
<input type="text" name="book_price" />
</p>
</form>
<!-- TemplateEndRepeat -->
</body>
</html>



上面这段代码,怎么写一个总体的 保存函数?
konfyt 2009-09-26
  • 打赏
  • 举报
回复
如果不能实现, 我就只能 每个书籍手动改变id, 然后保存时, 每个书籍都有一段保存代码了.
konfyt 2009-09-26
  • 打赏
  • 举报
回复
用iframe可以实现, 因为他每个文档对象是独立的.
但是iframe这种方式不能符合我的要求

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧