Emp*_*yee 6 javascript browser asp.net-mvc hyperlink
如果我tel:+4842566自己点击链接,我需要提供相同的行为。默认电话应用程序不应再呼叫该号码。
除了打开新标签之外,我还设法做到了。我写:
function Call(){
window.open("tel:+4842566",'_blank');
}
Run Code Online (Sandbox Code Playgroud)
和这个:
function Call(){
window.open("tel:+4842566");
}
Run Code Online (Sandbox Code Playgroud)
和这个:
function Call(){
document.getElementById('mymailto').click();
}
<a href="tel:+48123456" id="mymailto" style="display:none"></a>
Run Code Online (Sandbox Code Playgroud)
结果是一样的。计算机呼叫该号码,但已打开新选项卡。
问题:是否可以在没有新选项卡/窗口的情况下调用/打开此链接?
编辑:在我尝试运行这个客户端之前,我是在服务器端运行的,但没有意识到当我部署应用程序时,调用的不是客户端:
public ActionResult Call(int id, string number) {
System.Diagnostics.Process proc = new System.Diagnostics.Process();
string formattedNumber = "tel:+48" + formatPhoneNumber(number);
System.Diagnostics.Debug.WriteLine("NUMBER " + formattedNumber);
proc.StartInfo.FileName = formattedNumber;
proc.Start();
Person person = db.Persons.Find(id);
return RedirectToAction("Edit", new Person { Id = id });
}
Run Code Online (Sandbox Code Playgroud)
但后来我没有得到新标签,也许它会有所帮助。
编辑 2:
我不只是寻找 href 链接,因为启动tel:链接只是同时发生的两件事之一:
<p>@Html.ActionLink("Call Cell Phone", "Call", new { id = Model.Id, number = Model.CellNumber }, new { @class = "btn btn-default", onclick = "Call();" })</p>
Run Code Online (Sandbox Code Playgroud)
我转到控制器操作并调用Call()javascript 方法,而 JavaScript 方法是唯一可以简单打开任何链接的地方。
好的。这是一个小作弊,它可以在 Chrome 上运行,但不能在 IE 上运行,我在 ASP .NET MVC Web 应用程序开发中使用 IE。
function Call(){
document.getElementById('mymailto').click();
}
Run Code Online (Sandbox Code Playgroud)
并在 HTML 中
<a href="tel:+48123456" id="mymailto" style="display:none"></a>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12138 次 |
| 最近记录: |