Javascript 莫代尔不想在$location AngularJS处打开自己
嗨,有人能告诉我,如果我想要开放模式,该怎么办:Javascript 莫代尔不想在$location AngularJS处打开自己,javascript,css,angularjs,Javascript,Css,Angularjs,嗨,有人能告诉我,如果我想要开放模式,该怎么办: <a ng-click="openingModal($event)" href="#openModal">Open Modal</a> <div ng-click="clickedOutsideModal()" id="openModal" class="modalDialog"> 他不想打开自己,因为在url中: 如果我从控制器中删除$location并再次单击,url将如下所示: 然后模态会打开,
<a ng-click="openingModal($event)" href="#openModal">Open Modal</a>
<div ng-click="clickedOutsideModal()" id="openModal" class="modalDialog">
他不想打开自己,因为在url中:
如果我从控制器中删除$location并再次单击,url将如下所示:
然后模态会打开,但是我需要使用这个$location我应该怎么做来解决这个问题呢???为了显示模态我使用jquery ui对话框,像这样,我使用jquery、jquery ui和AngularJS:
<div ng-click="clickedOutsideModal()" id="openModal" class="modalDialog">
//In Angular JS
$scope.clickedOutsideModal= function(data){
showModalMessage('Title', 'Content');
}
//In jQuery
function showModalMessage(title, content){
elModalMessage = $('<div>').attr('title', title).html(content);
elModalMessage.dialog({
modal: true,
buttons: {
'OK': function() {
$( this ).dialog( "close" );
}
}
});
}
//在角JS中
$scope.clickedOutsideModal=函数(数据){
showModalMessage(“标题”、“内容”);
}
//在jQuery中
函数showModalMessage(标题、内容){
elModalMessage=$('').attr('title',title).html(内容);
elModalMessage.dialog({
莫代尔:是的,
按钮:{
“确定”:函数(){
$(此).dialog(“关闭”);
}
}
});
}
了解如何使用jquery ui:'
如果不使用from jQuery,可以使用另一种方法:
<div ng-click="clickedOutsideModal()" id="openModal" class="modalDialog">
//In Angular JS
$scope.clickedOutsideModal= function(data){
showModalMessage('Title', 'Content');
}
//In the Javascript
function showModalMessage(title, content){
document.getElementById("modal_title").innerHTML = title;
document.getElementById("modal_desc").innerHTML = content;
document.getElementById("modal").style.visibility = "visible";
}
function modal_hidden(){
document.getElementById("modal").style.visibility = "hidden";
}
//IN HTML and before the body ended
<div id="modal">
<div id="modal_wrapper">
<span onclick="modal_hidden()">Close</span>
<div id="modal_title"></div>
<div id="modal_desc"></div>
</div>
</div>
//IN CSS FILE
#modal{
display: none;
background: rgba(0,0,0,0.35);
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
}
#modal_wrapper{
width: 100%;
background: #fff;
border: 1px solid #cdcfd1;
padding: 30px 0;
margin-top: 125px;
box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
}
//在角JS中
$scope.clickedOutsideModal=函数(数据){
showModalMessage(“标题”、“内容”);
}
//在Javascript中
函数showModalMessage(标题、内容){
document.getElementById(“modal_title”).innerHTML=title;
document.getElementById(“modal_desc”).innerHTML=content;
document.getElementById(“模态”).style.visibility=“可见”;
}
函数modal_hidden(){
document.getElementById(“模态”).style.visibility=“隐藏”;
}
//在HTML和正文结束之前
接近
//在CSS文件中
#模态{
显示:无;
背景:rgba(0,0,0,0.35);
位置:绝对位置;
左:0;
排名:0;
宽度:100%;
身高:100%;
}
#模态包装器{
宽度:100%;
背景:#fff;
边框:1px实心#cdcfd1;
填充:30px0;
边缘顶部:125px;
长方体阴影:0.5pxRGBA(0,0,0,0.5);
}
为了显示模态,我使用jquery ui对话框,如下所示,我使用jquery、jquery ui和AngularJS:
<div ng-click="clickedOutsideModal()" id="openModal" class="modalDialog">
//In Angular JS
$scope.clickedOutsideModal= function(data){
showModalMessage('Title', 'Content');
}
//In jQuery
function showModalMessage(title, content){
elModalMessage = $('<div>').attr('title', title).html(content);
elModalMessage.dialog({
modal: true,
buttons: {
'OK': function() {
$( this ).dialog( "close" );
}
}
});
}
//在角JS中
$scope.clickedOutsideModal=函数(数据){
showModalMessage(“标题”、“内容”);
}
//在jQuery中
函数showModalMessage(标题、内容){
elModalMessage=$('').attr('title',title).html(内容);
elModalMessage.dialog({
莫代尔:是的,
按钮:{
“确定”:函数(){
$(此).dialog(“关闭”);
}
}
});
}
了解如何使用jquery ui:'
如果不使用from jQuery,可以使用另一种方法:
<div ng-click="clickedOutsideModal()" id="openModal" class="modalDialog">
//In Angular JS
$scope.clickedOutsideModal= function(data){
showModalMessage('Title', 'Content');
}
//In the Javascript
function showModalMessage(title, content){
document.getElementById("modal_title").innerHTML = title;
document.getElementById("modal_desc").innerHTML = content;
document.getElementById("modal").style.visibility = "visible";
}
function modal_hidden(){
document.getElementById("modal").style.visibility = "hidden";
}
//IN HTML and before the body ended
<div id="modal">
<div id="modal_wrapper">
<span onclick="modal_hidden()">Close</span>
<div id="modal_title"></div>
<div id="modal_desc"></div>
</div>
</div>
//IN CSS FILE
#modal{
display: none;
background: rgba(0,0,0,0.35);
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
}
#modal_wrapper{
width: 100%;
background: #fff;
border: 1px solid #cdcfd1;
padding: 30px 0;
margin-top: 125px;
box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
}
//在角JS中
$scope.clickedOutsideModal=函数(数据){
showModalMessage(“标题”、“内容”);
}
//在Javascript中
函数showModalMessage(标题、内容){
document.getElementById(“modal_title”).innerHTML=title;
document.getElementById(“modal_desc”).innerHTML=content;
document.getElementById(“模态”).style.visibility=“可见”;
}
函数modal_hidden(){
document.getElementById(“模态”).style.visibility=“隐藏”;
}
//在HTML和正文结束之前
接近
//在CSS文件中
#模态{
显示:无;
背景:rgba(0,0,0,0.35);
位置:绝对位置;
左:0;
排名:0;
宽度:100%;
身高:100%;
}
#模态包装器{
宽度:100%;
背景:#fff;
边框:1px实心#cdcfd1;
填充:30px0;
边缘顶部:125px;
长方体阴影:0.5pxRGBA(0,0,0,0.5);
}
您是否注意到您共享了本地主机url?以显示问题所在,因为什么?为什么要放置链接?您可以简单地编写url结构而不链接它,因为链接将不起作用。如果您使用$location
进行此操作,那么您不应该使用ng click
来触发它,而应该使用映射到预定义路由的href
。否则,不要使用location,只需调用函数。您是否注意到您共享了本地主机url?以显示问题所在,因为什么?为什么要放置链接?您可以简单地编写url结构而不链接它,因为链接将不起作用。如果您使用$location
进行此操作,那么您不应该使用ng click
来触发它,而应该使用映射到预定义路由的href
。否则,不要使用location,只需调用函数嘿,谢谢这个答案Majid Abbasi,但问题是,我在我的项目中没有使用JQuery:(,你能给我一些不同的建议吗?我在我的帖子中添加了JQuery-less版本嘿,谢谢这个答案Majid Abbasi,但问题是,我在我的项目中没有使用JQuery:(,你能给我一些不同的建议吗?我在我的帖子中添加了无jQuery版本