我有一个字符串,我想分成数组中包含的项目,如下例所示:
var text = "I like grumpy cats. Do you?"
// to result in:
var wordArray = ["I", " ", "like", " ", "grumpy", " ", "cats", ".", " ", "Do", " ", "you", "?" ]
Run Code Online (Sandbox Code Playgroud)
我尝试了以下表达式(和类似的变种没有成功
var wordArray = text.split(/(\S+|\W)/)
//this disregards spaces and doesn't separate punctuation from words
Run Code Online (Sandbox Code Playgroud)
在Ruby中有一个正则表达式运算符(\ b),它在任何单词边界处分割,保留空格和标点符号,但我找不到类似的Java脚本.非常感谢你的帮助.
我试图在我的网站上动态呈现一些HTML而没有成功.我尝试过使用jQuery的.html()函数,如下所示:
我的HTML
<div id='open_ender_output'></div>
Run Code Online (Sandbox Code Playgroud)
我的JQuery
var openEnderContent = "<p><span style="color: #ff0000;">DDD</span>!!!!!<strong>666666666666</strong></p>"
//openEnderContent comes from my backend
$('#open_ender_output').html(openEnderContent)
Run Code Online (Sandbox Code Playgroud)
结果是
<p><span style="color: #ff0000;">DDD</span>!!!!!<strong>666666666666</strong></p>
Run Code Online (Sandbox Code Playgroud)
有没有办法让浏览器动态渲染结果,以便它反映文本上设置的特定样式?
由于几个原因,我需要通过Ajax向控制器发送一个post请求,我不能涉及一个表单,它必须是在资源> javascript或标签之间的文件中编写的JS Ajax请求.
我写了一个似乎正确传递数据的函数.但是,它没有传递有效的真实性令牌,因此不允许请求通过.
有没有办法遵守CSRF保护生成令牌,以便控制器满意呢?
到目前为止,我的Ajax功能是:
var functionOne = function() {
var $form = $('#' + tinyMCE.activeEditor.formElement.id);
var action = $form.attr('action')
$.ajax({
method: "POST",
url: action,
data: $form.serialize(),
dataType: 'script',
});
};
Run Code Online (Sandbox Code Playgroud)
此表格通过以下参数
{"utf8"=>"?", "_method"=>"patch", "open_ender"=>
{"answer_id"=>"4",
"content"=>"<p>testing text</p>"},
"id"=>"5"}
Run Code Online (Sandbox Code Playgroud)
我已经尝试在Ajax对象中包含以下行
authenticity_token: $('meta[name=csrf-token]').attr('content'),
Run Code Online (Sandbox Code Playgroud)
这在应用程序布局中没有成功
$(function(){
$.ajaxSetup({
headers: { 'X-CSRF-Token': $('meta[name="csrf-token"]').attr('content') }
});
});
Run Code Online (Sandbox Code Playgroud)
UPDATE
公寓来自Aniket的解决方案.添加
authenticity_token: true
Run Code Online (Sandbox Code Playgroud)
在表单选项哈希也解决了这个问题
我试图通过Webpack在Rails 6.0.0.rc1中安装jQuery,但我不确定丢失了什么,但是$ is not defined尽管能够编译jQuery,但在浏览器控制台中却遇到了错误。
我使用添加了jQuery yarn add jquery,所以我的package.json看起来像这样
{
"name": "muladeseis_app",
"private": true,
"dependencies": {
"@babel/preset-react": "^7.0.0",
"@rails/actioncable": "^6.0.0-alpha",
"@rails/activestorage": "^6.0.0-alpha",
"@rails/ujs": "^6.0.0-alpha",
"@rails/webpacker": "^4.0.2",
"babel-plugin-transform-react-remove-prop-types": "^0.4.24",
"jquery": "^3.4.0",
"prop-types": "^15.7.2",
"react": "^16.8.6",
"react-dom": "^16.8.6",
"turbolinks": "^5.2.0"
},
"version": "0.1.0",
"devDependencies": {
"webpack-dev-server": "^3.3.1"
}
}
Run Code Online (Sandbox Code Playgroud)
我的app / javascript / packs / application.js需要从node_modules进行jquery
require("@rails/ujs").start()
require("turbolinks").start()
require("@rails/activestorage").start()
require("channels")
require("jquery")
Run Code Online (Sandbox Code Playgroud)
我尝试$通过执行以下操作在config / webpack / environment.js中进行注册:
const { environment } = require('@rails/webpacker')
const webpack = require('webpack')
module.exports …Run Code Online (Sandbox Code Playgroud)