【发布时间】:2018-07-09 02:43:31
【问题描述】:
我意识到以前有人问过类似的问题,但仍然不明白我的代码发生了什么。在用户将他们的序列输入到 textarea 之后,我想在 jQuery 函数之外访问变量 seq。 jquesry 函数内的 console.log 返回输入的序列,但 jQuery 函数之外的 console.log(我最终想在其中放置一些其他代码来分析序列)在 jquery 函数之前运行并返回一个空字符串。如何使使用 var seq 的代码仅在单击提交按钮后运行?谢谢!
var seq = "";
$("#subSeqType").on("click", function() {
if ($("#proteinButton").is(":checked")) {
$("#newTextArea").append("<textarea name = 'sequence' rows = '10' cols = '80' placeholder = 'Enter Protein Sequence here' > < /textarea><br>");
}
if ($("#dnaButton").is(":checked")) {
$("#newTextArea").append("<textarea name = 'sequence' rows = '10' cols = '80' placeholder = 'Enter DNA Sequence here' > < /textarea><br>");
}
$("#subSeqType").remove();
$("#newTextArea").append("<input id = 'subSeq' type='Submit'>");
$("#subSeq").on("click", function() {
seq = $("textarea:input[name=sequence]").val();
console.log(seq);
});
});
console.log("The sequence " + seq);
【问题讨论】:
-
将你的代码包装在一个函数中,这是你可以声明一个全局变量的唯一方法;关于你的权利的大量答案:) 或者你可以将 seq 从这个函数传递给另一个函数,以将它从一个函数传递到另一个函数
标签: javascript jquery