Javascript str_replace无法正常工作

时间:2015-08-13 02:52:09

标签: javascript php html forms

尝试在javascript中执行简单的str_replace(),我似乎无法弄清楚它为什么不起作用。我正在制作一个表单,在注册时用户可以选择一个国家,并自动加载该国家/地区的正确标志。在您选择名称中包含空格的国家/地区之前,一切正常。旗帜图像使用 - 代替空间。帮助...

Javascript代码:

$flagimg = '<img id="current_flag" name="current_flag" src="images/icons/flags/United-States.png" width="20px" />';

<script type="text/javascript">

function LoadFlag(FlagName) {
    var oFlag = window.document.getElementById("country");
    var sFlagImg = oFlag.options[oFlag.selectedIndex].value;

    window.document.getElementById(FlagName).src = "images/icons/flags/" + sFlagImg + ".png";
}

</script>

HTML代码:

<select id="country" name="country" onchange="javascript: LoadFlag('current_flag');"><?php echo getCountries(); ?></select>&nbsp; <?php echo $flagimg; ?>

我在哪里放str_replace()?

我试过了:

window.document.getElementById(FlagName).src = "images/icons/flags/" + str_replace(' ', '-', sFlagImg) + ".png";

它不起作用。

图片名称:

United-States.png
United-Kingdom.png

选择框选项值:

United States
United Kingdom

1 个答案:

答案 0 :(得分:0)

在这里找到答案“Replace all spaces in a string with '+'”抱歉浪费时间。

window.document.getElementById(FlagName).src = "images/icons/flags/" + sFlagImg.split(' ').join('-') + ".png";

解决了!