大家好我有w方法,使用点击事件更改图像的不透明度,并将此图像保存在文件夹中。我想要做的是我想使用onmouseup事件调用此方法并在div中自动预览img。 我有这个代码:
<asp:ScriptManager EnablePartialRendering="true" ID="ScriptManager1" runat="server"></asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional><ContentTemplate>
<input max="10" min="0" name="rangeInput" onmousemove="updateTextInput(this.value);" onmouseup="return showImg()" type="range" runat="server" />
<input id="txtOp" size="3" type="text" value="" runat="server" />
<asp:Button ID="bntChangeOpacity" runat="server" onClick="bntChangeOpacity_Click1" Text="Change Opacity" />
<div id="placehere"></div>
</ContentTemplate>
</asp:UpdatePanel>
所以这里我要替换bntChangeOpacity_Click1方法来调用onmouseup事件
背后的代码:
public void bntChangeOpacity_Click1(object sender, EventArgs e)
{
string s = txtOp.Value;
float ss = float.Parse(s);
float opacityvalue = ss / 10;
var img = ImageTransparency.ChangeOpacity(Image.FromFile(Server.MapPath("img1.jpg")), opacityvalue);
img.Save(Server.MapPath("img2.jpg"));
}
答案 0 :(得分:0)
您必须将此作为webmethod innorder来从前端调用此方法;更改方法签名,如下所示:
[WebMethod]
public static void bntChangeOpacity_Click1(object sender, EventArgs e)
{
string s = txtOp.Value;
float ss = float.Parse(s);
float opacityvalue = ss / 10;
var img = ImageTransparency.ChangeOpacity(Image.FromFile(HttpContext.Current.Server.MapPath("img1.jpg")), opacityvalue);
img.Save(HttpContext.Current.Server.MapPath("img2.jpg"));
}
答案 1 :(得分:0)
您可以使用PageMethods
。
将您的方法设为静态并使用WebMethod
属性进行装饰,如下所示
[System.Web.Services.WebMethod]
public static void ChangeOpacity()
{
string s = txtOp.Value;
float ss = float.Parse(s);
float opacityvalue = ss / 10;
var img = ImageTransparency.ChangeOpacity(Image.FromFile(Server.MapPath("img1.jpg")), opacityvalue);
img.Save(Server.MapPath("img2.jpg"));
}
并称之为 function changeOpacity(){ PageMethods.ChangeOpacity(); }
来自javascript。
您需要更改bntChangeOpacity
标记如下。
<asp:Button ID="bntChangeOpacity" runat="server" onClientClick="changeOpacity()" Text="Change Opacity" />
请勿忘记在页面上使用ScriptManager
。
答案 2 :(得分:0)
请查找该示例代码
http://www.codeproject.com/Articles/180355/Calling-a-code-behind-function-from-JavaScript
否则你需要做Ajaxcall。