웹 프론트엔드 JS 튜토리얼 TinyMCE가 AjaxForm을 제출하고 데이터 Solution_javascript 기술을 얻지 못했습니다.

TinyMCE가 AjaxForm을 제출하고 데이터 Solution_javascript 기술을 얻지 못했습니다.

May 16, 2016 pm 04:10 PM
tinymce 제출하다 데이터 얻다 해결책

이 글에서는 TinyMCE가 AjaxForm을 제출할 때 데이터를 얻을 수 없는 문제에 대한 해결 방법을 분석합니다. 참고할 수 있도록 모든 사람과 공유하세요. 구체적인 분석은 다음과 같습니다.

AjaxForm을 사용하기 전에는 TinyMCE를 사용하여 댓글 내용을 편집하는 작은 웹 양식을 만들었습니다. 사용자 경험을 조금 높이려면 AjaxForm을 사용하여 Ajax 제출을 구현하면 됩니다. 그런데 예상치 못한 일이 일어났습니다. 즉, 제출할 때마다 처음 제출할 때 AjaxForm은 현재 편집된 주석 내용, 즉 TextArea의 내용을 가져올 수 없습니다. TextArea의 내용을 제출하려면 다시 제출을 클릭해야 합니다.

핵심은 TinyMCE의 콘텐츠가 제출 전에 TextArea로 업데이트되지 않는다는 것입니다. 그래서 제출하기 전에 AjaxForm에 이벤트 바인딩이 있는지 확인하고 싶었는데 beforeSubmit 이벤트에 formData의 내용이 채워져 있는 것을 발견했습니다. 여기서 현재 TinyMCE의 내용을 채울 수는 있지만 항상 그렇지 않다는 느낌이 듭니다. 아주 예쁘다.

이 문제를 해결할 수 있는 다른 방법이 있는지 알아보기 위해 AjaxForm의 소스 코드를 확인해 본 결과 AjaxForm 작성자가 이 문제에 대한 통합 솔루션을 제안한 것으로 나타났습니다. 구체적인 소스 코드는 다음과 같습니다. 🎜>

1. js 코드는 다음과 같습니다.


코드 복사 코드는 다음과 같습니다.
// 양식 데이터를 추출하기 전에 조작하기 위한 후크
//tinyMCE 또는 FCKEditor와 같은 리치 편집기와 함께 사용하기에 편리합니다
바르베토 = {};
this.trigger('form-pre-serialize', [this, options, veto]);
if (veto.veto) {
log('ajaxSubmit: 양식 사전 직렬화 트리거를 통해 검토된 제출');
이것을 돌려주세요;
}
2. FCKEditor와 유사:

코드 복사 코드는 다음과 같습니다.
// 'ajaxForm'을 사용하여 폼 바인딩
$('#commentForm').ajaxForm(옵션);
// form-pre-serialize 이벤트를 바인딩하고 form-serilaize 이벤트를 트리거하기 전에 TinyMCE 데이터를 텍스트 영역에 저장합니다
$('#commentForm').bind('form-pre-serialize', function(event, form, options, veto) {
tinyMCE.triggerSave();
});
이 기사가 모든 사람의 JavaScript 프로그래밍 설계에 도움이 되기를 바랍니다.

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

PHP를 사용하여 Alipay EasySDK를 호출 할 때 '정의되지 않은 배열 키 '부호''오류 문제를 해결하는 방법은 무엇입니까? PHP를 사용하여 Alipay EasySDK를 호출 할 때 '정의되지 않은 배열 키 '부호''오류 문제를 해결하는 방법은 무엇입니까? Mar 31, 2025 pm 11:51 PM

문제 설명 PHP를 사용하여 Alipay EasysDK를 호출 할 때, 공식 코드에 따라 매개 변수를 작성한 후, 작동 중에 오류 메시지 가보고되었습니다. "정의되지 않은 ...

PHP가 MySQL에 연결된 후 페이지가 비어 있습니다. 유효하지 않은 다이 () 함수의 이유는 무엇입니까? PHP가 MySQL에 연결된 후 페이지가 비어 있습니다. 유효하지 않은 다이 () 함수의 이유는 무엇입니까? Apr 01, 2025 pm 03:03 PM

PHP가 MySQL에 연결 한 후 페이지가 비어 있고 Die () 함수가 실패한 이유가 있습니다. PHP와 MySQL 데이터베이스 간의 연결을 배울 때는 종종 혼란스러운 것들이 발생합니다 ...

Docker 환경에서 PECL을 사용하여 확장자를 설치할 때 오류가 발생하는 이유는 무엇입니까? 그것을 해결하는 방법? Docker 환경에서 PECL을 사용하여 확장자를 설치할 때 오류가 발생하는 이유는 무엇입니까? 그것을 해결하는 방법? Apr 01, 2025 pm 03:06 PM

Docker 환경을 사용할 때 Docker 환경에 Extensions를 설치하기 위해 PECL을 사용하여 오류의 원인 및 솔루션. 종종 일부 두통이 발생합니다 ...

ThinkPhp6 라우팅 : 중국어와 같은 특수 문자를 포함하는 URL 매개 변수를 완전히 얻는 방법은 무엇입니까? ThinkPhp6 라우팅 : 중국어와 같은 특수 문자를 포함하는 URL 매개 변수를 완전히 얻는 방법은 무엇입니까? Apr 01, 2025 pm 02:51 PM

ThinkPhp6 라우팅 매개 변수는 중국어 및 완전한 획득으로 처리됩니다. ThinkPhp6 프레임 워크에서 특수 문자 (예 : 중국어 및 구두점 마크)를 포함하는 URL 매개 변수는 종종 처리됩니다 ...

Linux 터미널에서 Python 버전을 볼 때 발생하는 권한 문제를 해결하는 방법은 무엇입니까? Linux 터미널에서 Python 버전을 볼 때 발생하는 권한 문제를 해결하는 방법은 무엇입니까? Apr 01, 2025 pm 05:09 PM

Linux 터미널에서 Python 버전을 보려고 할 때 Linux 터미널에서 Python 버전을 볼 때 권한 문제에 대한 솔루션 ... Python을 입력하십시오 ...

SCAPY 크롤러를 사용할 때 파이프 라인 영구 스토리지 파일을 작성할 수없는 이유는 무엇입니까? SCAPY 크롤러를 사용할 때 파이프 라인 영구 스토리지 파일을 작성할 수없는 이유는 무엇입니까? Apr 01, 2025 pm 04:03 PM

SCAPY 크롤러를 사용할 때 파이프 라인 영구 스토리지 파일을 작성할 수없는 이유는 무엇입니까? 토론 Data Crawler에 Scapy Crawler를 사용하는 법을 배울 때 종종 ...

중간 독서를 위해 Fiddler를 사용할 때 브라우저에서 감지되는 것을 피하는 방법은 무엇입니까? 중간 독서를 위해 Fiddler를 사용할 때 브라우저에서 감지되는 것을 피하는 방법은 무엇입니까? Apr 02, 2025 am 07:15 AM

Fiddlerevery Where를 사용할 때 Man-in-the-Middle Reading에 Fiddlereverywhere를 사용할 때 감지되는 방법 ...

See all articles