小编Sam*_*ami的帖子

在JS中替换变音符号

我正在比较字符串并且必须替换JS中的变音符号,但似乎JS无法识别字符串中的变音符号.文本来自数据库,在浏览器中,变音符号显示正常.

function replaceUmlauts(string)
{
    value = string.toLowerCase();
    value = value.replace(/ä/g, 'ae');
    value = value.replace(/ö/g, 'oe');
    value = value.replace(/ü/g, 'ue');
    return value;
}
Run Code Online (Sandbox Code Playgroud)

作为我试过的搜索模式:

  • "ä","ö","ü"
  • /ä/,/ö/,/ü/
  • " ä"," ö"," ü"(完全绝望;-))

可以肯定的是,我尝试使用indexOf替换函数不是问题:

console.log(value.indexOf('ä'));
Run Code Online (Sandbox Code Playgroud)

但所有模式的输出是: -1

所以我猜这是编码的某种问题,但正如我在页面上所说的,变音符号看起来很好.

有任何想法吗?这看起来很简单......

编辑:即使我找到了答案,问题也没有真正解决"在根"(编码).这是我的页面编码:

<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
Run Code Online (Sandbox Code Playgroud)

该数据库具有:utf8_general_ci

对我来说似乎完全没问题.

javascript encoding replace

16
推荐指数
3
解决办法
3万
查看次数

在IE 8中未定义Jquery attr('src')(在FF中工作)

到目前为止,我将总结我们发现的内容:

  • 在事件处理程序内部,无法在IE8中读取属性src(FF工作正常),既不使用jQuery也不使用通常的javascript

  • 获取数据的唯一方法是将其放在处理程序之外,将其写入数组并从处理程序内部读取

  • 但是仍然没有可能写入src(jQuery和javascript都没有工作 - 仅适用于IE 8)

  • 我已经通过将img elemts自己写入文档来实现它,但这个问题背后的原因并没有解决

我们的代码片段使用了两次.

旧代码

<script type="text/javascript">
jQuery(document).ready(function() {
//...
//view entry
jQuery('.blogentry').live('click',function(){
    // Get contents
    blogtext = jQuery(this).children('.blogtext').html();
    blogauthor = jQuery(this).children('.onlyblogauthor').html();
    blogtitle = jQuery(this).children('.blogtitle').html();
    profileimage = jQuery(this).children('.profileimage').html();
    imgleft = jQuery(this).children('.Image_left').attr('src');
    imgcenter = jQuery(this).children('.Image_center').attr('src');
    imgright = jQuery(this).children('.Image_right').attr('src');

    // Write contents
    jQuery('#bild_left').attr('src', imgleft);
    jQuery('#bild_center').attr('src', imgcenter);
    jQuery('#bild_right').attr('src', imgright);
    jQuery('.person').attr('src', profileimage);
    jQuery('#g_fb_name').html(blogauthor);
    jQuery('#g_titel').html(blogtitle);
    jQuery('#g_text').html(blogtext);
    //...
});
//...
// Change entry
jQuery('.blogentry').each(function(){
    entryindex = jQuery(this).attr('rel');
    if (entry == entryindex)
    {
        // The following works fine (so 'children' works …
Run Code Online (Sandbox Code Playgroud)

javascript jquery internet-explorer-8

7
推荐指数
1
解决办法
8736
查看次数

通过JQuery ajax.post向PHP提交JSON数据

我使用POST通过AJAX将数据提交到php文件.它只需提交字符串就可以正常工作,但现在我想用JSON提交我的JS对象并在PHP端解码它.

在控制台中,我可以看到,我的数据已正确提交,但在PHP端,json_decode返回NULL.

我尝试过以下方法:

this.getAbsence = function()
{
    alert(JSON.stringify(this));
    jQuery.ajax({
        type: "POST",
        contentType: "application/json; charset=utf-8",
        url: "ajax/selectSingle.php?m=getAbsence",
        data: JSON.stringify(this),
        success : function(data){
            alert(data);
        }
    });
}
Run Code Online (Sandbox Code Playgroud)

PHP:

echo $_POST['data'];
echo json_decode($_POST['data']);
echo var_dump(json_decode($_POST['data']));
Run Code Online (Sandbox Code Playgroud)

和:

this.getAbsence = function()
{
    alert(JSON.stringify(this));
    jQuery.ajax({
        type: "POST",
        contentType: "application/json; charset=utf-8",
        url: "ajax/selectSingle.php?m=getAbsence",
        data: {'Absence' : JSON.stringify(this)},
        success : function(data){
            alert(data);
        }
    });
}
Run Code Online (Sandbox Code Playgroud)

PHP:

echo $_POST['Absence'];
echo json_decode($_POST['Absence']);
echo var_dump(json_decode($_POST['Absence']));
Run Code Online (Sandbox Code Playgroud)

警报只是检查一切都没问题......

而通常的字符串是正确回应的:-)

php ajax jquery json

6
推荐指数
1
解决办法
3万
查看次数

Eclipse for PHP Developers需要JRE

我已经下载了Eclipse进行php开发.执行后它要求我安装java运行时环境,但是为什么我需要它,如果我想开发php?因此通常情况下,php的eclipse发行需要jre吗?

php java eclipse

1
推荐指数
1
解决办法
493
查看次数

标签 统计

javascript ×2

jquery ×2

php ×2

ajax ×1

eclipse ×1

encoding ×1

internet-explorer-8 ×1

java ×1

json ×1

replace ×1