php如何制作弹出窗口

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php如何制作弹出窗口相关的知识,希望对你有一定的参考价值。

javascript属于网络的脚本语言,用来给html网页增加动态功能。Javascript弹出窗口的方法:

    1,弹出包含提示信息窗口  在script标签中  加入  alert("要现实的内容");

    2,弹出新窗口,window对象的open方法可实现弹出窗口,具体代码如下

window.open (\'page.html\', \'newwindow\', \'height=100, width=400, top=0, left=0, toolbar=no, menubar=no, scrollbars=no, resizable=no,location=n o, status=no\') //这句要写成一行

参数解释: 
  window.open 弹出新窗口的命令; 
  \'page.html\' 弹出窗口的文件名; 
  \'newwindow\' 弹出窗口的名字(不是文件名),非必须,可用空\'\'代替; 
  height=100 窗口高度; 
  width=400 窗口宽度; 
  top=0 窗口距离屏幕上方的象素值; 
  left=0 窗口距离屏幕左侧的象素值; 
  toolbar=no 是否显示工具栏,yes为显示; 
  menubar,scrollbars 表示菜单栏和滚动栏。 
  resizable=no 是否允许改变窗口大小,yes为允许; 
  location=no 是否显示地址栏,yes为允许; 
  status=no 是否显示状态栏内的信息(通常是文件已经打开),yes为允许; 

参考技术A Javascript属于网络的脚本语言,用来给HTML网页增加动态功能。Javascript弹出窗口的方法:
1,弹出包含提示信息窗口 在script标签中 加入 alert("要现实的内容");

2,弹出新窗口,window对象的open方法可实现弹出窗口,具体代码如下

1

window.open ('page.html', 'newwindow', 'height=100, width=400, top=0, left=0, toolbar=no, menubar=no, scrollbars=no, resizable=no,location=n o, status=no') //这句要写成一行

参数解释:
  window.open 弹出新窗口的命令;
  'page.html' 弹出窗口的文件名;
  'newwindow' 弹出窗口的名字(不是文件名),非必须,可用空''代替;
  height=100 窗口高度;
  width=400 窗口宽度;
  top=0 窗口距离屏幕上方的象素值;
  left=0 窗口距离屏幕左侧的象素值;
  toolbar=no 是否显示工具栏,yes为显示;
  menubar,scrollbars 表示菜单栏和滚动栏。
  resizable=no 是否允许改变窗口大小,yes为允许;
  location=no 是否显示地址栏,yes为允许;
  status=no 是否显示状态栏内的信息(通常是文件已经打开),yes为允许;
参考技术B php不会弹窗,弹窗需要在html文件中使用javascript代码弹窗。本回答被提问者和网友采纳 参考技术C

php中是可以插入HTML代码,准确说什么文件都能放入HTML代码,哪怕是PHP后缀文件.

但前提是:不能在<?php ?>包含内

//列子,这就是PHP中插入JS脚本的简单列子
public function index()

        $str = 'hello world';
        ?>//结束PHP代码插入JS脚本
        <script>
            alert(<?php echo $str; ?>);
                </script>
        <?php//又开始PHP代码
        


单击某行时如何制作弹出窗口

【中文标题】单击某行时如何制作弹出窗口【英文标题】:how to make a pop-up window when click on some row 【发布时间】:2021-11-11 13:16:11 【问题描述】:

我的代码中有这些行:

output$ex1 <- DT::renderDataTable(
  DT::datatable(df[df$country == "usa" ,]))
                  

output$ex2 <- DT::renderDataTable(
  DT::datatable(df[df$country == "france" ,]))

现在我想在单击某行时制作一个弹出窗口。 我发现这段代码看起来很有用:

observeEvent(input$mydatatable_rows_selected, showModal(modalDialog(title = "You have selected a row!"))   )

但我不确定我需要在代码中的哪个位置写下这一行

【问题讨论】:

这能回答你的问题吗? Shiny datatable: popup data about selected row in a new window 不,我看到了这个答案,但它没有解决我的问题。当我输出 $ex1 和输出 $ex2 时我如何使用它? 在observeEvent中用ex1(或ex2)替换mydatatable所以observeEvent(input$mydatatable_row_selected ... -> observeEvent(input$ex1_row_selected ... mycars[input$mydatatable_rows_selected,] -> df[df$country == "usa" ,][input$ex1_rows_selected,] 好的,但是我把这条线放在哪里? output$ex1 【参考方案1】:

在 cmets 中建议您的解决方案适用于行选择,然后如果您禁用选择,它将无法工作。

这里是行点击的解决方案:

library(shiny)
library(DT)

ui <- fluidPage(
  br(),
  splitLayout(
    DTOutput("dtable1"),
    DTOutput("dtable2")
  )
)

js <- function(id) 
  c(
    "table.on('click', 'tr', function()",
    sprintf("Shiny.setInputValue('%s', true, priority: 'event');", id),
    ");"
  )


server <- function(input, output, session)
 
  output[["dtable1"]] <- renderDT(
    datatable(iris, callback = JS(js("t1")))
  )

  output[["dtable2"]] <- renderDT(
    datatable(iris, callback = JS(js("t2")))
  )
  
  observeEvent(input[["t1"]], 
    showModal(
      modalDialog(
        "You clicked on a row of table 1"
      )
    )
  )

  observeEvent(input[["t2"]], 
    showModal(
      modalDialog(
        "You clicked on a row of table 2"
      )
    )
  )
  


shinyApp(ui, server)

编辑

如果你想要点击行的索引:

library(shiny)
library(DT)

ui <- fluidPage(
  br(),
  splitLayout(
    DTOutput("dtable1"),
    DTOutput("dtable2")
  )
)

js <- function(id) 
  c("console.log(table);",
    "table.on('click', 'tr', function()",
    "  var index = this.rowIndex;",
    sprintf("Shiny.setInputValue('%s', index, priority: 'event');", id),
    ");"
  )


server <- function(input, output, session)
 
  output[["dtable1"]] <- renderDT(
    datatable(iris, callback = JS(js("t1")))
  )

  output[["dtable2"]] <- renderDT(
    datatable(iris, callback = JS(js("t2")))
  )
  
  observeEvent(input[["t1"]], 
    showModal(
      modalDialog(
        sprintf("You clicked on row number %d of table 1", input[["t1"]])
      )
    )
  )

  observeEvent(input[["t2"]], 
    showModal(
      modalDialog(
        sprintf("You clicked on row number %d of table 2", input[["t2"]])
      )
    )
  )
  


shinyApp(ui, server)

【讨论】:

但我没有两张桌子,我只有一张桌子,里面有几条吧

以上是关于php如何制作弹出窗口的主要内容,如果未能解决你的问题,请参考以下文章

单击某行时如何制作弹出窗口

如何在等待程序启动混乱/GTK +时制作加载/介绍动画弹出窗口

如何制作像 Windows 7 通知弹出窗口这样的窗口,(WS_THICKFRAME 但不可调整)

我想在主窗口上制作一个弹出窗口

我如何使用 Bootstrap4 模态在 Django 中制作功能正常的删除确认弹出窗口

如何在 android studio 的弹出窗口内添加滚动的 listView?