1
我有一个响应.json(json格式)的应用程序。我还必须构建一个书签,在您执行它的页面上创建一个div。这个小书签向应用程序发出请求,并且应用程序应该响应包含javascript的json对象。比方说,这是所有的JavaScript是:包含javascript的Rails json响应
function selectElementContents()
{
el = document.getElementById('quicklink_value')
if (document.body.createTextRange) {
// IE
var textRange = document.body.createTextRange();
textRange.moveToElementText(el);
textRange.select();
textRange.execCommand("Copy");
}
else if (window.getSelection && document.createRange) {
// non-IE
var range = document.createRange();
range.selectNodeContents(el);
var sel = window.getSelection();
sel.removeAllRanges();
sel.addRange(range);
var range = document.createRange();
try {
var successful = document.execCommand('copy');
var msg = successful ? 'successful' : 'unsuccessful';
} catch(err) {
console.log('Oops, unable to copy');
}
}
}
content = "<%= escape_javascript(render(:partial => 'events/bookmarklet').html_safe) %>";
_tp_bookmarklet(content);
正如你看到的我也有一个部分是需要被一个变量命名为里面的内容呈现。
def bookmarklet
respond_to do |format|
format.json
end
end
这是由小书签调用的动作。我怎样才能将JavaScript(包含呈现的部分内容变量)作为json响应?
我可以提供任何需要的附加信息。
你可以这样做只是'@content = escape_javascript(渲染(:部分=> 'events/bookmarklet')。html_safe)'然后'format.json {content:@content}'并且在你的前端你可以得到'json'响应并且响应将会有你的html .. – Minato
缺少部分事件/ _bookmarklet它似乎没有找到部分...任何想法? –
你有在视图文件夹中的局部视图? – Minato