javascript 在渲染的 js 部分中不可用

标签 javascript jquery ajax ruby-on-rails-4 turbolinks

我面临这样的问题: 在页面上我渲染了一个js部分(ajax),该部分包含一些字段。另外,我有一个包含 js 代码的文件,当我专注于类“expand”的字段时,该文件应该会生成一些内容。 问题是:此脚本适用于页面上具有“expand”类的所有字段,除了在部分中呈现的字段。您如何看待可能出现的问题? 文件.js:

$(document).ready(function() {
  $(function() {
    $('.expand').focus(function () {
      alert('hello');
    });
  });
});

我渲染了一个 js 部分:

$("#tasks-right").html("<%= escape_javascript(render :partial => 'task_details', :locals => {:object => @task}) %>");

谢谢!

最佳答案

您应该使用不显眼的 JavaScript 代码:

$(function() {
  $(document).on('focus', '.expand', function() {
    alert('hello');
  });
});

此外,这行代码执行相同的操作:

$(document).ready(function() {
  $(function() {

因此,请删除第一个,只保留第二个,就像上面的示例一样。

关于javascript 在渲染的 js 部分中不可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36113907/

相关文章:

javascript - Ajax-为什么我得到错误函数而不是成功函数?

javascript - 在 div 中动态调整文本大小并响应

javascript - 添加逗号来分割数字

javascript - 如果聚合 JavaScript 函数变为负数,则停止更改数字输入

javascript - Rails 远程表单和 jquery

html - 具有相同目标 iframe 的不同位置的多个 <form> 标记?

javascript - 使用 jQuery 动态向表添加行

.net - 在 .NET 中提交表单

jquery - 如何将 CSS 样式添加到没有 #id 或 .class 的 &lt;script&gt; 中?

jquery - 在 jquery 数据表中显示嵌套的 JSON 数据