问题描述
我的自我山姆。我在这个领域是全新的。有一些问题。所以我在这里与您分享。
我正在使用 FormBuilder(https://github.com/kevinchappell/formBuilder) 现在从下面的代码我得到了所有的拖放输入字段。作为我想存储在 wordpress DB 上的 json 文件。 请帮助我,我可以进一步处理。
下面 构建器的拖放是从底部 id="fb-editor 和我从 id="saveData" 获得的 Json 文件创建的按钮。现在我想通过 Ajax 存储这些数据
<div class="build-wrap form-wrapper-div" id="fb-editor"></div>
<div class="saveDataWrap">
<button id="saveData" type="button">Save</button>
</div>
入队部分 以下是用于创建 From Builder 的一些入队文件。 qbf_create.js 我基本上写下 jQuery 代码并从那里触发它。
public function questionnaires_enqueue($screen){
if('qbf_page_questionnaire_based_filter_cqbf' == $screen ){
wp_enqueue_script( 'questionnaire_jquery_min_js',$this->plugin_url . 'assets/Admin/jquery.min.js',null,1.0,true );
wp_enqueue_script( 'questionnaire_jquery_ui_min_js',$this->plugin_url . 'assets/Admin/jquery-ui.min.js',true );
wp_enqueue_script( 'questionnaire_drag_drop_js',$this->plugin_url . 'assets/Admin/form-builder.min.js',true );
wp_register_script( 'questionnaire_main_js',$this->plugin_url . 'assets/Admin/qbf_create.js',array('jquery'),true );
wp_localize_script( 'questionnaire_main_js','qbf',array(
'ajaxurl'=>admin_url("admin-ajax.PHP",null)
) );
wp_enqueue_script('jquery');
wp_enqueue_script('questionnaire_main_js');
wp_enqueue_style( 'questionnaire_main_css_style',$this->plugin_url . 'assets/Admin/qbf_create.css' );
}
}
qbf_create.js -> jQuery 代码
jQuery(function($) {
var fbeditor = document.getElementById('fb-editor');
var formBuilder = $(fbeditor).formBuilder();
document.getElementById("saveData").addEventListener("click",() => {
// console.log("external save button click");
const result = formBuilder.actions.save();
// console.log(result);
// added code
data = {...result,action: "qbf_save_data"};
// console.log(data);
$.ajax({
url: qbf.ajaxurl,data:data,type: 'post',dataType: 'json',success: function(response) {
console.log(response);
}
});
return false;
});
});
add_action("wp_ajax_qbf_save_data","qbf_field_data");
function qbf_field_data(){
$data= $_REQUEST;
$form = json_encode($data,JSON_PRETTY_PRINT);
echo json_encode($form,JSON_PRETTY_PRINT);
die();
}
控制台输出:
{
"0": {
"type": "file","required": "false","label": "File Upload","className": "form-control","name": "file-1626262785316","access": "false","subtype": "file","multiple": "false"
},"action": "qbf_save_data"
}
查询: 我在这里给出了完整代码的结构。我想将通过拖放操作找到的 Jason 文件存储在数据库中。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)