电子HTML Javascript按钮无法正常工作

时间:2018-02-15 23:07:56

标签: javascript html electron

我正在尝试使用javascript创建和保存文件 这是我的HTML代码:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Tutorial</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.con/bootstrap/3.3.7/css/bootstrap.min.css">
<link rel="stylesheet" href="./css/styles.css"> 
</head>
<body>
<div class="container" id="form-container">
<textarea class= "form-control" placeholder ="File Contents..." rows="10"></textarea>
<input id= "content" class="form-control" placeholder="Input Text Here...">
<button id="createButton" class="btn btn-success">Create File</button>
</div>
</body>

<script>
    require('./renderer.js')
</script>
</html>  

Create File button not working 该页面目前看起来像这样。由于某些原因,我不明白,创建文件的按钮不起作用我点击它但没有任何反应。它不会创建文件,也不会打开要保存文件的位置。

这是我的Javascript代码:

var app = require('electron').remote;
var dialog = app.dialog;
var fs = require('fs');

document.getElementbyId('createButton').onclick = () => {
    dialog.showSaveDialog((fileName) => {
        if(fileName === undefined){
            alert("You didnt save the file");
            return;
        }

        var content = document.getElementbyId('content').value;
        fs.writeFile(FileName, content, (err) => {
            if(err) console.log(err);
            alert("The file has been succesfully saved")
        })
    });
};

为什么“创建文件”按钮不起作用?

1 个答案:

答案 0 :(得分:0)

您尝试使用的功能名为document.getElementById,使用camel-case命名约定。更正后,您的代码将如下所示:

//... require statements as in your code
document.getElementById("createButton").onclick = () => {
    // ...
    var content = document.getElementById("content").value;
    // ...
}