将JQuery GET请求的结果存储为javascript变量

将JQuery GET请求的结果存储为javascript变量,javascript,jquery,html,Javascript,Jquery,Html,我试图使用JQuery和JS获取html文件名/URL,并返回该文件中的所有文本(不包括标记) 我以前从未使用过JQuery,也不知道为什么我的代码不起作用 我正在使用HTML表单获取文件名 提交表单时,它会触发一个JS函数,该函数应从提供的文件名中检索文本,并将其存储为变量 第一段代码是我的JS文件。 第二个是包含表单的HTML页面。 第三个是测试页面 var pageWords; function showWords() { var filename = $('#filename'

我试图使用JQuery和JS获取html文件名/URL,并返回该文件中的所有文本(不包括标记)

我以前从未使用过JQuery,也不知道为什么我的代码不起作用

我正在使用HTML表单获取文件名

提交表单时,它会触发一个JS函数,该函数应从提供的文件名中检索文本,并将其存储为变量

第一段代码是我的JS文件。 第二个是包含表单的HTML页面。 第三个是测试页面

var pageWords;

function showWords() {
    var filename = $('#filename');
    $.get(filename, function (data) {
        pageWords = data;
        //alert(pageWords)
    });
}






<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Word Count Page</title>
    <script src="JQUERY.js"></script>
    <script src="wordCount.js"></script>
</head>
<body>
<div id="inputContainer">
    <form>
        Enter a file name to be evaluated:
        <input type="text" id="filename">
        <input type="submit" id="submit" onsubmit="showWords()">
    </form>
</div>
<div id="results">

</div>
</body>
</html>






<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>test file</title>
</head>
<body>
<b>Some text</b>
    Some more
<small>small text</small>
</body>
</html>
var页面词;
函数showWords(){
var filename=$(“#filename”);
$.get(文件名、函数(数据){
页面字=数据;
//警报(页面文字)
});
}
字数页
输入要计算的文件名:
测试文件
一些文本
更多
小文本

您的代码几乎正确,但您正在将输入元素而不是输入值传递给jQuery。
此外,只要用户单击提交按钮,您的
就会被提交,这可能会将用户重定向到另一个页面并丢弃所有表单数据

以下内容可能会解决这些问题

var pageWords;

function showWords() {
    // var filename = $('#filename'); // `filename` is an object
    var filename = $('#filename').val(); // `val()` returns the content of the input
    $.get(filename, function (data) {
        pageWords = data;
        //alert(pageWords)
    });
}

// Remember to abort the default submit action
var form = document.querySelector('form')
form.addEventListener('submit', event => event.preventDefault())

@KevinB你在这两点上都是完全正确的。。。两个都修好了!