Я пытаюсь получить простой букмарклет, работающий с Rails, который создает форму с текущим заголовком страницы и URL и отправляет создать объект.
Проблема, с которой я сталкиваюсь, заключается в том, что когдаформа отправляется, она пересылается на страницу «успеха», а не просто остается на той же странице, как и должна.
Я знаю, что код букмарклета должен возвращаться неопределенным, чтобы не допустить этого, но я попытался поместить void(0) везде, где только можно придумать, но это все еще переходит на следующую страницу.
Вот два способа, которые я пробовал:
javascript:void((function(){
var s = document.createElement('script');
s.setAttribute('language','javascript');
s.setAttribute('src','http://localhost:3000/script/bookmarklet.js');
document.body.appendChild(s);
})());
и:
javascript:(function(){
var s = document.createElement('script');
s.setAttribute('language','javascript');
s.setAttribute('src','http://localhost:3000/script/bookmarklet.js');
document.body.appendChild(s);
void(0);
})();
Может ли другой файл .js вызывать проблему?Вот оно:
(function() {
function create_form() {
var path = "http://localhost:3000/links";
var newform = document.createElement('form');
newform.setAttribute("method", "post");
newform.setAttribute("action", path);
newform.setAttribute("accept-charset","UTF-8");
var title_hidden_field = document.createElement("input");
title_hidden_field.setAttribute("type","hidden");
title_hidden_field.setAttribute("name", "link[title]");
title_hidden_field.setAttribute("value", "Test Title");
newform.appendChild(title_hidden_field);
var url_hidden_field = document.createElement("input");
url_hidden_field.setAttribute("type","hidden");
url_hidden_field.setAttribute("name", "link[url]");
url_hidden_field.setAttribute("value", "http://www.example.com");
newform.appendChild(url_hidden_field);
document.body.appendChild(newform);
newform.submit();
};
create_form();
})();
Я тоже пытался вернуть undefined, но поведение при пересылке не изменилось.Может ли это быть как-то связано с тем, как rails обрабатывает запрос на отправку формы?