以下に示すように、いくつかの値を含む単純なドロップダウンリストがあります。
<select id="Opacity">
<option value="50">50%</option>
<option value="100">100%</option>
</select>
今、webmethod への ajax 呼び出しを使用して、選択した値を渡しています。
$("#btnGetFiles").click(function () {
ClearImages();
$.ajax({
type: "POST",
url: "Default.aspx/GetFiles",
data: JSON.stringify({imgOpacity: $('#Opacity').val()}),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (response) {
}
});
});
今私の webmethod では、ドロップダウン値を「50」として選択すると、値が「50」になります。
ここで、その不透明度を設定する必要がある以下のコードがあるという問題が発生します。
Dim imageOpacity As Single = 0.0F
imageOpacity = CInt(imgOpacity)
imageOpacity = imgOpacity / 100
imageOpacity = 1 - imgOpacity
Dim colorMatrixElements As Single()() = {New Single() {1.0F, 0.0F, 0.0F, 0.0F, 0.0F},
New Single() {0.0F, 1.0F, 0.0F, 0.0F, 0.0F},
New Single() {0.0F, 0.0F, 1.0F, 0.0F, 0.0F},
New Single() {0.0F, 0.0F, 0.0F, imageOpacity , 0.0F},
New Single() {0.0F, 0.0F, 0.0F, 0.0F, 1.0F}}
Dim wmColorMatrix As New ColorMatrix(colorMatrixElements)
ここで、 「%」を追加する必要があります。この方法でCInt(imgOpacity + "%")"imgOpacity"
を実行しようとすると、文字列を "Double" 型に変換できないというエラーがスローされます。
では、どうすればこれを修正できますか?