我需要使用google语言翻译器中的jQuery AJAX删除所有双引号,单引号。当我改变onchange()时,如果发现双引号,它不会翻译字符串或字符,而且我也在php中使用但没有得到预期的结果。
我使用php'字符串相关函数但没有得到结果
HTML CODE:
<select name="langid" id="langid<@=review_id@>" class="guest clearfix" style="width: 150px;height: 29px;" onchange='translate_text("<@=review_id@>","<@=review_title@>","<@=your_view@>","<@=neg_review@>");'>
PHP代码:
<?php
public function translate_text()
{
try
{
$positive = $_REQUEST['positivereview'];
$negative = $_REQUEST['negativereview'];
$title = $_REQUEST['title'];
$translate_into = $_REQUEST['lang'];
$var = new translate($translate_from,$translate_into);
$ar = array();
if($title)
{
$ar['title'] = $var->get($title);
}
if($positive)
{
$ar['positivereview'] = $var->get($positive);
}
if($negative)
{
$ar['negativereview'] = $var->get($negative);
}
print_r(json_encode($ar));
exit(0);
}
catch(Exception $e)
{
$this->log->logIt($this->module."-".""."-".$e);
}
}
?>
JS / JQUERY CODE:
function translate_text($review_id,$review_title,$your_view,$neg_review)
{
var sel = jQuery('#langid'+$review_id).val();
var url=serverurl+'index.php/feedback';
showLoadingBar();
if(sel == 0)
sel = 'en';
var passDataAsStr="opcode=translate_text&positivereview="+
$your_view+"&negativereview="+$neg_review+"&title="+$review_title+"&lang="+sel;
jQuery.ajax({
type: "POST",
url: url,
//async : false,
data: passDataAsStr,
success: function(response) {
hideLoadingBar();
// console.log(response);
jQuery('#btnclose'+$review_id).show();
jQuery('#trans_div'+$review_id).show();
var res = jQuery.parseJSON(response);
console.log(res['title']);
console.log(res['positivereview']);
console.log(res['negativereview']);
jQuery('#titleid_'+$review_id).text(res['title']);
jQuery('#positiveid'+$review_id).text(res['positivereview']);
jQuery('#negativeid'+$review_id).text(res['negativereview']);
}
});
}
当我想要更改语言翻译器时它不会改变,我就是这样使用的
var $review_title = this.$review_title.replace(/['"]+/g, "");
但我不知道如何在ajax jquery中的参数中传递`.replace()。在jquery和php中更改审阅标题也不会得到结果
我想要这种类型的输出。
输入如下:"New "home" away from home when in village"
输出必须是:New home away from home when in village
任何有任何想法的机构请帮忙解决。感谢
在php
或jquery
方或任何html特殊字符
答案 0 :(得分:1)
使用str.replace(/"|'/g,'');
删除双引号或单引号:
var str = `New "home" away from home when in village's`;
var res = str.replace(/"|'/g,'');
console.log(res);
&#13;
答案 1 :(得分:1)
你可以使用:
$str = str_replace(array('\'', '"'), '', $str);
如果您的字符串只包含字符和数字,那么您可以使用:
$str = preg_replace("/[^a-zA-Z0-9 ]+/", "", html_entity_decode($str ));