-2

私は以下を使用していますが、動作しますが、アラート値opt3にコンマが含まれています。

それらを削除するにはどうすればよいですか?

form method='get' action='form.php'>
    <select name='val' class='select' id='opt1' multiple>
        <option></option>
        <option value='a'>a</option>
        <option value='b'>b</option>
        <option value='c'>c</option>
        <option value='d'>d</option>
    </select>
    <select name='opt' id='opt2'>
        <option value='AAA'>AAA</option>
        <option value='BBB'>BBB</option>
    </select>
    <input type='submit' name='submit' value='submit' onClick="return function1();">
</form>

<script type='text/javascript'>
    function function1(){
        var opt1=document.getElementById("opt1").value;
        var opt2=document.getElementById("opt2").value;
        var opt3=$('#opt1').val();
        alert( opt3 );
        var response=confirm("Are you sure? option1="+opt1+" option2="+opt2+" option3="+opt3 );
        return response;
     }

ac & d を選択すると、アラートに a、c、d が表示されます。acd を表示したいです

ありがとう

4

5 に答える 5

2

これはどうですか?

var opt3=$('#opt1').val().replace(",","");

アップデート:

Ok。@jrezigaが言及したように。の戻り値は.val()配列になります。文字列がある場合は、上のコード例で問題ありません。あなたの場合のような配列がある場合、これを行うことができます:

var opt3=$('#opt1').val().join("");
于 2013-08-14T09:55:39.770 に答える
2

使用するとき

$('#opt1').val()

複数の値の配列を返します。

.replace の代わりに、これを試すことができます:

$('#opt1').val().join(';')

セパレーター「;」を変更するか、次のようなループを使用できます。

var str = $('#opt1').val();
for (var i=0;i<str.length;i++){
   alert(str[i]);
}
于 2013-08-14T09:59:56.340 に答える
0

値からすべてのコンマを削除するには、jquery でreplaceメソッドを使用します。

var opt3 = $('#opt1').val().replace(/,/g, "")
于 2013-08-14T09:56:23.853 に答える
0

すべてのカンマを置き換えてみてください

var opt3=$('#opt1').val();
opt3 = opt3.replace(/,/g, "");
alert(opt3);

where,はそのようにエスケープされた特殊文字で/あり、gグローバルオカレンスを置き換えるものです。

于 2013-08-14T09:56:00.747 に答える
0

これを試して:

var opt3=$('#opt1').val().replace(/,/g, '');//replace all comma
        alert( opt3 );
于 2013-08-14T09:59:11.477 に答える