我在我的表单中使用Bootstrap WYSIHTML5 html编辑器
<input type="text" name="product" id="product">
<textarea name="description" id="description" class="textarea" placeholder="Place some text here" style="width: 100%; height: 200px; font-size: 14px; line-height: 18px; border: 1px solid #dddddd; padding: 10px;">
</textarea>
<input type="product_code" name="product_code" id="product_code">
并在输入字段中输入产品时使用Ajax获取产品详细信息,并希望使用说明更新textarea
<script type="text/javascript">
$(document).ready(function($){
$('#product').autocomplete({
source:'<?php echo Router::url(array("controller" => "Products", "action" => "search")); ?>',
minLength: 1
});
$('#product').blur(function() {
var p_term = $(this).val();
if (p_term) {
var dataString = 'term='+ p_term;
//alert(dataString);
$.ajax({
dataType:'json',
type: "POST",
url: '/products/ajax-search-product',
data: dataString,
cache: false,
success: function(data) {
/* set values to input field */
$('#description').val(data['description']);
$('#product_code').val(data['product_code']);
},
error: function(xhr, ajaxOptions, thrownError) {
alert(xhr.status);
alert(thrownError);
}
});
}
});
});
</script>
但是,当$('#product_code').val(data['product_code']);
工作正常时,此代码不会更新textarea字段的值。
我尝试按alert($('#description').val());
打印textarea的值,它正在工作并在textarea字段中打印预填充值。
编辑2
控制台输出:console.log(data);
Object {
id: 1,
product_code: "765457",
SKU: "",
title: "yuphoria screen guard",
description: "yuphoria screen guard",
short_description: "yuphoria screen guard",
15 more…
}
我试过这个
$('#description').val(data['description']); // this not working
alert(data['description']); // this working
只有一个id="description"
并且没有其他地方使用。
答案 0 :(得分:0)
我找到了这个解决方案,我希望它会有所帮助。
$('iframe').contents().find('.wysihtml5-editor').html('your new content here');