Phonegap - 如何将 $1,743 插入 sql 事务数据库?

Posted

技术标签:

【中文标题】Phonegap - 如何将 $1,743 插入 sql 事务数据库?【英文标题】:Phonegap- how to insert $1,743 into the sql transaction database? 【发布时间】:2013-03-12 03:23:28 【问题描述】:

如何从我的内容中转义 $,?不断收到同样的错误。请帮忙。

TypeError: 'undefined' 不是对象(评估 'x[i].getElementsByTagName("line4")[0].childNodes[0].nodeValue')

// Populate the database 
//
function populateDB(tx) 
    alert("Populate!");
    tx.executeSql('DROP TABLE IF EXISTS news');
    tx.executeSql('CREATE TABLE IF NOT EXISTS news (id, title, line1, line2 TEXT, line3 TEXT, line4 TEXT, line5 TEXT)');

    if (window.XMLHttpRequest)
    // code for IE7+, Firefox, Chrome, Opera, Safari
        xmlhttp=new XMLHttpRequest();
    
    else// code for IE6, IE5
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    
    xmlhttp.open("GET","news.xml",false);
    xmlhttp.send();
    xmlDoc=xmlhttp.responseXML;


    var x=xmlDoc.getElementsByTagName("news");
    for (i=0;i<x.length;i++)
    
        p_id = x[i].getElementsByTagName("id")[0].childNodes[0].nodeValue;
        p_title = x[i].getElementsByTagName("title")[0].childNodes[0].nodeValue;
        p_line1 = x[i].getElementsByTagName("line1")[0].childNodes[0].nodeValue;
        p_line2 = x[i].getElementsByTagName("line2")[0].childNodes[0].nodeValue;
        p_line3 = x[i].getElementsByTagName("line3")[0].childNodes[0].nodeValue;
        p_line4 = x[i].getElementsByTagName("line4")[0].childNodes[0].nodeValue;
        p_line5 = x[i].getElementsByTagName("line5")[0].childNodes[0].nodeValue;

        tx.executeSql('INSERT INTO news (id,title,line1,line2,line3,line4,line5) VALUES (?,?,?,?,?,?,?)',[p_id,p_title,p_line1,p_line2,p_line3,p_line4,p_line5]);

    



【问题讨论】:

如果你像这样列出你的 for 循环,那么你需要你的评估输入。 empty(x[i].getElementsByTagName("title")[0].childNodes[0].nodeValue;) continue; @Marko ReferenceError: 找不到变量:空 这意味着您很可能只应用 childNodes[0].nodeValue 或 nodevalue @Marko 你什么意思?已经是childNodes[0].nodeValue了? 我看到你只支持回到 IE5。不是那种限制吗?网景导航器呢? 【参考方案1】:

也许你应该试试。

if((y = x[i].getElementsByTagName("line4")[0].childNodes[0]) == '[object Text]')        
  p_line4 =y.nodeValue;
else
  p_line4 = null; //or assign empty string

已编辑。

【讨论】:

有一个额外的括号。

以上是关于Phonegap - 如何将 $1,743 插入 sql 事务数据库?的主要内容,如果未能解决你的问题,请参考以下文章

使用表单插入 PhoneGap 数据库

如何在 iOS 中删除 Phonegap 构建权限警报?

WebSQL,Phonegap。返回最后插入行的 ID

PhoneGap 安卓市场发布

Codeforces Round #743 (Div. 2) 题解

我如何将 Phonegap 项目创建的 cordova 1.9 更新为 cordova 3.1