是否可以使用JQuery将变量的内容保存到文件中。
我有一个html表格(字母),稍后由用户保存和编辑 我在变量中捕获整个html文档,但现在我想将该变量写入文件并使用cron将其保存回数据库。
这是我到目前为止的代码
import java.util.regex.Pattern; import org.jsoup.Connection; import org.jsoup.Connection.Method; import org.jsoup.Jsoup; import org.jsoup.nodes.Document; import org.jsoup.select.Elements; public class HelloWorld { public static void main(String[] args) { Connection.Response res = null; Document doc = null; Boolean OK = true; int start = 0; String query; ArrayList<String> tempList = new ArrayList<>(); ArrayList<String> games = new ArrayList<>(); Pattern r = Pattern.compile("title=\"(.*)\" a"); try { //first connection with GET request res = Jsoup.connect("https://play.google.com/store/apps/category/GAME_ACTION/collection/topselling_free") .method(Method.GET) .execute(); doc = res.parse(); } catch (Exception ex) { //Do some exception handling here } for (int i=1; i <= 60; i++) { //parse the result and add it to the list query = "div.card:nth-child(" + i + ") > div:nth-child(1) > div:nth-child(3) > h2:nth-child(2) > a:nth-child(1)"; tempList.add(doc.select(query).toString()); } while (OK) { //loop until you get the same results again start += 60; System.out.println("now at number " + start); try { //send post request for each new page doc = Jsoup.connect("https://play.google.com/store/apps/category/GAME_ACTION/collection/topselling_free?authuser=0") .cookies(res.cookies()) .data("start", String.valueOf(start)) .data("num", "60") .data("numChildren", "0") .data("ipf", "1") .data("xhr", "1") .post(); } catch (Exception ex) { //Do some exception handling here } for (int i=1; i <= 60; i++) { //parse the result and add it to the list query = "div.card:nth-child(" + i + ") > div:nth-child(1) > div:nth-child(3) > h2:nth-child(2) > a:nth-child(1)"; if (!tempList.contains(doc.select(query).toString())) { tempList.add(doc.select(query).toString()); } else { //we've seen these games before, time to quit OK = false; break; } } } for (int i = 0; i < tempList.size(); i++) { //remove all redundent info. Matcher m = r.matcher(tempList.get(i)); if (m.find()) { games.add(m.group(1)); System.out.println((i + 1) + " " + games.get(i)); } } } }
所以我想最终将$( document ).ready(function() {
var isDirty = false;
$("textarea").on("change", function() {
isDirty = (this.defaultValue !== this.value);
if (isDirty)
this.defaultValue = this.value;
});
$("input").on("change", function() {
isDirty = (this.defaultValue !== this.value);
if (isDirty)
this.defaultValue = this.value;
});
});
function getPageHTML() {
var vDocText = "<html>" + $("html").html() + "</html>";
console.log(vDocText);
}
的内容保存到文件中,并使用php cron进程将文件发送回4D(我的数据库)。
答案 0 :(得分:3)
jQuery是一个JavaScript库,JavaScript是一种客户端语言,因此您无法将任何数据保存到文件中。您可以将数据传递给在服务器上存储内容的PHP脚本(例如,在数据库中),也可以将数据保存在客户端上(例如在Cookie中或使用Web Storage API)。
所以,回答你的问题:不,不可能使用jQuery将变量的内容保存到文件中。
但是,有certain plugins通过jQuery提供对本地文件系统的访问,但我不建议使用它们。根据设计,JavaScript无法访问本地文件系统(出于安全原因)。上述插件使用了一些 hacks 和变通方法来访问文件系统(ActiveX和Java applet)。
在我看来,最好的选择是发出AJAX request with jQuery并在服务器上安装PHP脚本,负责编写(和进一步处理)文件。