0

コンパイルされるたびに phone gap changes エラーが発生するのはなぜですか。場合によっては、エラーなしで実行され、コードに変更が加えられていないにもかかわらず、同じコードで関数の解析エラーが見つからないなどの愚かなエラーが発生します。

これは、コンパイルごとに異なるエラーを発生させるコードです


   <html>
<head>
<link href="index.css" rel="stylesheet" type="text/css">
<link href="wrapper.css" rel="stylesheet" type="text/css">
<link href="natiweb.css" rel="stylesheet" type="text/css">
    <script type="text/javascript" charset="utf-8" src="cordova-2.3.0.js"></script>
    <script src="jquery.mobile/jquery-1.7.2.min.js"></script>
    <script src="jquery.mobile/jquery.mobile-1.1.0.min.js"></script>



<script type="text/javascript" charset="utf-8"> 
function loadcontact()
{
    alert('load');
    //  navigator.contacts.find("*",contactSuccess, contactError);
    // find all contacts with 'Bob' in any name field
    var options = new ContactFindOptions();
    options.filter="Bob";
    options.multiple=true; 
    var fields = ["displayName", "name"];
**navigator.contacts.find(fields, contactSuccess onError, options);**
    window.location = "download.html";
}

function contactSuccess(contacts)
{
    alert('success');
        for (var i=0; i<contacts.length; i++) 
        {
            console.log("Display Name = " + contacts[i].displayName);
        }
}
function contactError(error) 
{
    alert('error');
}

</script>
</head>
<body class="index">
<p></p>
<h1 class="natiweb">NatiWeb</h1>
<form name ="choicepage" id="wrapper" >
<table id="wrapper" >
<tr><td>
<table align="center">
<tr></tr>

<p><b>Select Upload/Download</b></p>
<select name="upload/download">
<option selected >Upload</option>
<option>Download</option>
</select>
</td>
</tr>
<tr>
<td><img src="images/contact-icon.png" height="15"> Contacts </td>
<td><input name="opt" type="checkbox" value="Contacts"></td>
</tr>

<tr>
<td><input type="button" value="Back"></td>
<td><input type="submit" value="Next1" onclick="loadcontact();"></td>
</tr>
</table>
</table>
</form>
</body>
</html>

エラー 1:SyntaxError: file:///android_asset/www/choice.html:22 での解析エラー 22 行目は太字でマークされています

4

1 に答える 1

0

その行にカンマがありません。

もう1つ、成功/エラーのコールバックを受け取る前ではなく、受け取った後にユーザーをリダイレクトする必要があります。

function loadcontact()
{
    alert('load');
    //  navigator.contacts.find("*",contactSuccess, contactError);
    // find all contacts with 'Bob' in any name field
    var options = new ContactFindOptions();
    options.filter="Bob";
    options.multiple=true; 
    var fields = ["displayName", "name"];
    navigator.contacts.find(fields, contactSuccess, onError, options);

}

function contactSuccess(contacts)
{
    alert('success');
        for (var i=0; i<contacts.length; i++) 
        {
            console.log("Display Name = " + contacts[i].displayName);
        }
    window.location = "download.html";
}
function contactError(error) 
{
    alert('error');
    window.location = "download.html";
}
于 2013-03-29T19:32:30.437 に答える