前台js中绑定获取后台全局bool变量

后台代码:

  1. //定义一全局的bool变量^-^

  2. protected bool isUser = false;
    

前台:

  1. $(document).ready(function(){  
    //    $("#language").change(function(){  
    //        var lang = $("#language").val();  
    //             
    //        //location.href="Default.aspx?writelanguager=" +   
    //    });  
        //此处访问后台的全局bool变量  
        if(<%= this.isUser.ToString().ToLower() %>)  
        {  
        }  
        else  
        {  
            $("#myAskBut").hide();  
        }
        var def="<option value=''>请选择</option>";  
        $("#language").prepend(def);  
        $("#language").val("");  
    });  
    

#后台的isUse变量值如果直接在前台<%= this.isUser %>的话,实际其值为False(或True),不能作为if条件判断的依据,需转换为false(或true) 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在 Go ,可以使用 `flag` 包来解析命令行选项。 首先,在程序导入 `flag` 包: ``` import "flag" ``` 然后,使用 `flag.Bool` 函数定义一个 `-d` 选项。这个函数接受两个参数:选项的名字和选项的默认值。在这个例子,我们将选项的默认值设为 `false`,表示程序默认不会进入后台执行。 ``` var d = flag.Bool("d", false, "run program in the background") ``` 接下来,调用 `flag.Parse()` 函数来解析命令行选项。 ``` flag.Parse() ``` 最后,在程序使用 `*d` 来判断是否有 `-d` 选项。如果有,就执行后台执行的操作;如果没有,就继续执行剩余的程序逻辑。 ``` if *d { // Run program in the background } else { // Continue with rest of the program } ``` 总的来说,你可以按照以下步骤来设置程序判断是否有 `-d` 选项: 1. 导入 `flag` 包 2. 使用 `flag.Bool` 函数定义 `-d` 选项 3. 调用 `flag.Parse()` 函数解析命令行选项 4. 在程序使用 `*d` 来判断是否有 `-d` 选项 ### 回答2: 在golang,可以使用flag包来解析命令行参数。首先,我们需要定义一个命令行参数变量来接收用户输入的-d选项。然后,调用flag.BoolVar函数将命令行参数与该变量关联起来。接着,我们可以使用flag.Parse函数来解析命令行参数。 下面是一个示例代码: ```go package main import ( "flag" "fmt" "os" "os/signal" "syscall" ) var isDaemon bool func main() { flag.BoolVar(&isDaemon, "d", false, "启用后台执行模式") flag.Parse() if isDaemon { // 启用后台模式 fmt.Println("进入后台执行模式") go daemonize() // 在后台执行模式下,程序不会终止 // 可以在这里添加你的后台任务代码 // 消息通知,防止程序立即退出 sigChan := make(chan os.Signal, 1) signal.Notify(sigChan, os.Interrupt, syscall.SIGTERM) <-sigChan return } // 在非后台模式下,继续执行其他命令行操作 fmt.Println("执行用户命令行操作") } // 后台执行代码 func daemonize() { // 添加后台执行逻辑 // 例如,模拟后台任务执行 for i := 0; i < 10; i++ { fmt.Println("后台任务执行...") } } ``` 在上述代码,首先定义了一个布尔类型的全局变量isDaemon用于接收-d选项是否存在,默认值为false。然后使用flag.BoolVar函数将-d选项与该变量关联起来,设置了-d选项的默认值为false,并添加了相关的说明信息。接下来调用flag.Parse函数来解析命令行参数。 在main函数,首先判断isDaemon的值,如果为true,则表示用户输入了-d选项,程序将进入后台执行模式。在后台执行模式下,你可以添加你的后台任务代码,例如打开socket、启动服务等。 为了防止程序立即退出,我们可以使用signal包来监听断信号,例如Ctrl+C和SIGTERM。当接收到断信号时,程序将退出。 如果isDaemon的值为false,则表示用户没有输入-d选项,程序将继续执行其他命令行操作,例如执行用户的命令。 以上代码演示了如何使用golang来设置程序判断是否有-d选项并在有-d选项时进入后台执行不终止程序,不阻塞用户命令行操作。 ### 回答3: 在Golang,可以通过使用标准库的"flag"包来解析命令行参数。为了实现程序判断是否有"-d"选项并且启动后进入后台执行且不终止程序,可以按照以下步骤进行操作: 1. 首先,需要导入"flag"包和其它可能需要使用的包: ```go import ( "flag" "os" "os/signal" "syscall" ) ``` 2. 接下来,在main函数定义一个布尔类型的变量,用来表示是否有"-d"选项: ```go var inBackground bool ``` 3. 然后,使用flag包来定义命令行参数,并将其与上一步定义的变量绑定: ```go func init() { flag.BoolVar(&inBackground, "d", false, "后台执行,不终止程序") flag.Parse() } ``` 4. 接下来,将程序进入后台执行的逻辑写在一个单独的goroutine,并在程序退出时进行清理: ```go func runInBackground() { // 进入后台执行的逻辑 // 处理程序退出的信号 signals := make(chan os.Signal, 1) signal.Notify(signals, os.Interrupt, syscall.SIGTERM) <-signals // 执行清理逻辑 } func main() { if inBackground { go runInBackground() } else { // 其它正常执行的逻辑 } select{} } ``` 通过上述步骤我们可以实现在程序启动时判断是否有"-d"选项,如果有则进入后台执行,并且不终止程序,不会阻塞用户在命令行上的操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值