如何使数据库HTML5中的通用功能? [英] How to make generic function in databse HTML5?
本文介绍了如何使数据库HTML5中的通用功能?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
你能告诉我如何在databse HTML5中做泛型函数。这意味着我将通过名称Table.Or如果可能,我们可以传递表的数据类型与数据类型?
我在使用
时遇到错误 http://jsfiddle.net/RnheY/1/
var html5rocks = {};
html5rocks.webdb = {};
html5rocks.webdb.db = null;
html5rocks.webdb.open = function(){
var dbSize = 5 * 1024 * 1024; // 5MB
html5rocks.webdb.db = openDatabase(DataBaseName,1.0,Todo manager,dbSize);
} bb
$ b html5rocks.webdb.createTable = function(tableName){
var db = html5rocks.webdb.db;
db.transaction(function(tx){
tx.executeSql(CREATE TABLE IF NOT EXISTS+ tableName +(ID INTEGER PRIMARY KEY ASC,todo TEXT,added_on DATETIME) []);
});
}
$(document).ready(function(){
$(#test).click(function(){
alert(Handler for .click )called。);
html5rocks.webdb.open();
html5rocks.webdb.createTable(Student);
});
});
解决方案
可以通过创建数组并定义它在全球层面。
请找到工作的演示
< input type =textid =UserNamename =UserNameplaceholder =Usernamevalue =Rohit>
< input type =passwordid =Passwordname =Passwordplaceholder =Passwordvalue =Password>
< input type =submitid =submitvalue =登录data-mini =true>
JQUERY SCRIPTS
var arrcolumnName = ['UserName','Password'];
var tablename ='tbl_Login'
$('#submit')。click(function(){
submitForm();
} ;
function submitForm(){
var _UserName = $('#UserName')。val();
var _Password = $('#Password')。val();
var arrValue = _UserName +'|'+ _Password;
var arr = arrValue.split(|);
InsertIntoTable(tablename,arrcolumnName,arr);
}
function InsertQuery(tablename,arrColumn,arrValues){
var query =;
query + =INSERT INTO+ tablename +(;
for(i = 0; i query + = arrColumn [i] + ,;
query = query.substring(0,query.length - 1);
query + =)VALUES(
for(i = 0; i< ; arrValues.length; i ++)
query + ='+ arrValues [i] +',;
query = query.substring(0,query.length - 1);
query + =)
return query;
}
函数InsertIntoTable(tablename,arrColumn,arrValue){
var db = CreateDB();
var Query = InsertQuery(tablename,arrColumn,arrValue)
db.transaction(populateDB,errorDB,successDB);
function populateDB(tx){
CreateTable(tablename,arrcolumnName,tx);
tx.executeSql(Query);
}
function errorDB(err){
alert(err.message);
}
function successDB(){
alert('Insert Success !!!');
}
}
函数CreateDB(){
var db = window.openDatabase('TrialDB1','','my first database' ,5 * 1024 * 1024);
return db;
}
函数CreateTable(tablename,arrColumn,tx){
var Query = CreateTableQuery(tablename,arrColumn);
tx.executeSql(Query);
}
函数CreateTableQuery(tablename,arrColumn){
var query =;
query + =CREATE TABLE IF NOT EXISTS+ tablename +(;
for(i = 0; i query + = arrColumn [i ] +,;
query = query.substring(0,query.length - 1);
query + =)
return query;
}
can you please tell me how to make generic function in databse HTML5.It mean I will pass name of "Table" .Or If possile we can pass coloumn names of table with data type ?
Can you please give example of that ?
I am getting error while using http://jsfiddle.net/RnheY/1/
var html5rocks = {};
html5rocks.webdb = {};
html5rocks.webdb.db = null;
html5rocks.webdb.open = function() {
var dbSize = 5 * 1024 * 1024; // 5MB
html5rocks.webdb.db = openDatabase("DataBaseName", "1.0", "Todo manager", dbSize);
}
html5rocks.webdb.createTable = function(tableName) {
var db = html5rocks.webdb.db;
db.transaction(function(tx) {
tx.executeSql("CREATE TABLE IF NOT EXISTS "+tableName+"(ID INTEGER PRIMARY KEY ASC, todo TEXT, added_on DATETIME)", []);
});
}
$(document).ready(function(){
$( "#test" ).click(function() {
alert( "Handler for .click() called." );
html5rocks.webdb.open();
html5rocks.webdb.createTable("Student");
});
});
解决方案
You can do this by creating an array and defining it on global level. Please find the working DEMO
<input type="text" id="UserName" name="UserName" placeholder="Username" value="Rohit">
<input type="password" id="Password" name="Password" placeholder="Password" value="Password">
<input type="submit" id="submit" value="Log in" data-mini="true">
JQUERY SCRIPTS
var arrcolumnName = ['UserName', 'Password'];
var tablename = 'tbl_Login'
$('#submit').click(function () {
submitForm();
});
function submitForm() {
var _UserName = $('#UserName').val();
var _Password = $('#Password').val();
var arrValue = _UserName + '|' + _Password;
var arr = arrValue.split("|");
InsertIntoTable(tablename, arrcolumnName, arr);
}
function InsertQuery(tablename, arrColumn, arrValues) {
var query = "";
query += "INSERT INTO " + tablename + " (";
for (i = 0; i < arrColumn.length; i++)
query += arrColumn[i] + ",";
query = query.substring(0, query.length - 1);
query += ") VALUES ("
for (i = 0; i < arrValues.length; i++)
query += "'" + arrValues[i] + "',";
query = query.substring(0, query.length - 1);
query += ")"
return query;
}
function InsertIntoTable(tablename, arrColumn, arrValue) {
var db = CreateDB();
var Query = InsertQuery(tablename, arrColumn, arrValue)
db.transaction(populateDB, errorDB, successDB);
function populateDB(tx) {
CreateTable(tablename, arrcolumnName, tx);
tx.executeSql(Query);
}
function errorDB(err) {
alert(err.message);
}
function successDB() {
alert('Insert Success!!!');
}
}
function CreateDB() {
var db = window.openDatabase('TrialDB1', '', 'my first database', 5 * 1024 * 1024);
return db;
}
function CreateTable(tablename, arrColumn, tx) {
var Query = CreateTableQuery(tablename, arrColumn);
tx.executeSql(Query);
}
function CreateTableQuery(tablename, arrColumn) {
var query = "";
query += "CREATE TABLE IF NOT EXISTS " + tablename + " (";
for (i = 0; i < arrColumn.length; i++)
query += arrColumn[i] + ",";
query = query.substring(0, query.length - 1);
query += ")"
return query;
}
这篇关于如何使数据库HTML5中的通用功能?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文