0

У меня есть этот код, который устанавливает атрибут «onclick» для всех кнопок отправки, чтобы вызвать определенную функцию. Пользовательский указатель будет запускаться на сайтах социальных сетей (Facebook) и шифровать сообщения, отправляемые пользователями. Поэтому я хочу, чтобы в событии click, чтобы приостановить действие по умолчанию, просмотрите сообщение, которое оно отправляет каким-либо образом (я думаю, с помощью formData), запустите функцию шифрования в текстовом сообщении и продолжите действие отправки с отправленным зашифрованным сообщением. Так вот скрипт:как зашифровать сообщение formdata, отправленное с действием отправки

$('textarea', window.content.document) 
.closest('form') 
.find('input[type=submit]') 
.attr("onclick","dont();"); 

function dont(){ 
//access formData sent with the submit action and encrypt the message 
}; 
+0

Кто именно вы пытаетесь сохранить данные путем шифрования данных? –

+2

В качестве альтернативы вместо того, чтобы использовать 'attr' для установки обработчика кликов, вы также можете написать' .click (dont) '. – Jacob

+0

@ 32bitkid Я стараюсь держать данные в безопасности от крупных корпораций, таких как facebook и google, и затрудняет или не позволяет правительствам искать политически «неправильные» ключевые слова, которые пользователи пишут. – vkefallinos

ответ

1

Похоже, что вы, возможно, отсутствует возврат. В атрибуте onclick не имеет возврата до того, как функция не остановит действие.

$('textarea', window.content.document) 
.closest('form') 
.find('input[type=submit]') 
.attr("onclick","return dont();"); 

function dont(){ 
//access formData sent with the submit action and encrypt the message 
//be sure to return true or false depending on if you want the action submitted 
}; 
0

Вместо размещения функции OnClick на кнопки представляют вы можете непосредственно определить время вызова функции для сбора и шифрования ДАННЫЕ на самой форме, как показано ниже

<form name="sampleForm" method="post" onsubmit="return dont()" enctype="multipart/form-data" action="someurl"> 


function dont() 
{ 
    //code to access the form data and encrypt 

    if(error) 
     return false; //Stops the submission of the form 
    else 
     return true; 

} 

или иначе

Просто введите кнопку (тип ввода = кнопка) вместо submit (input type = submit) и определите функцию onclick, как показано ниже:

<input type="button" value="submit" onclick="dont()" /> 

function dont() 
{ 
    //code to access the form data and encrypt 

    if(error) 
     alert("Failed") //Stops the submission of the form 
    else 
     document.forms[0].submit(); 

} 

Надеюсь, это поможет.