javascript - 在 Play-Scala(激活器)中,无法从 javascript 动态填充 <div>

标签 javascript scala playframework playframework-2.3 typesafe

请在此处找到代码 - https://github.com/iamanandkris/RedirectURL/blob/master/app/views/editRedirect.scala.html 。当焦点从这 3 个对象中的任何一个发生变化时,我尝试将输入 1,2 和 3 的内容打印到 div 中。我可以看到当焦点改变时 java 脚本被调用,并且我也能够收到警报。我能够填充以下 3 个值

     var idToGet = document.getElementById('uid').value
     var qargsToGet = document.getElementById('qargs').value
     var rurlToGet = document.getElementById('rurl').value

但是该语句不起作用

     var s= document.getElementById('thecurrenturl');
     s.html = "testing again";

请仔细阅读下面的完整代码:

@(redirectForm: Form[RedirectModel])(implicit flash: Flash, lang: Lang)
@import helper._
@import helper.twitterBootstrap._

@main(Messages("products.form")) {
  <h2>@Messages("products.form")</h2>

  @helper.form(action = routes.Redirects.save()) {
    <fieldset>

      <label for="targetURL">Target URL: </label>
      <div id="thecurrenturl"></div>

      <legend>
        @Messages("products.details", Messages("products.new"))
      </legend> 

      @inputText(
         redirectForm("uid"), '_label -> "User ID",'onBlur->"myFunction()",'_help -> "Enter a valid user id."
      )
      @textarea(
         redirectForm("qargs"), 'onBlur->"myFunction()"
      )
      @textarea(
         redirectForm("rurl"), 'onBlur->"myFunction()"
      )

    </fieldset>



    <p><input type="submit" class="btn primary"
        value='@Messages("products.new.submit")'></p>
  }

    <script type="text/javascript">
        var successFn = function(data) {
            console.debug("Success of Ajax Call");
            console.debug(data);
            };
            var errorFn = function(err) {
            console.debug("Error of ajax Call");
            console.debug(err);
        }

        ajax1 = {
            success: successFn,
            error: errorFn
        }

        function myFunction() {

            alert("test")
            var idToGet = document.getElementById('uid').value
            var qargsToGet = document.getElementById('qargs').value
            var rurlToGet = document.getElementById('rurl').value

            var s= document.getElementById("thecurrenturl");
            s.html = "testing again";

            alert(idToGet+'/'+qargsToGet+'/'+rurlToGet)
            jsRoutes.controllers.Redirects.getString()
            .ajax(ajax1);

        }
    </script>
}

最佳答案

更改下面的行

s.html = "testing again";

s.innerHTML = "testing again";

html 是一个 jQuery 函数。

关于javascript - 在 Play-Scala(激活器)中,无法从 javascript 动态填充 <div>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25763052/

相关文章:

javascript - 在 chrome 扩展程序中单击按钮后,即使将 CSS 显示标记更新为阻止,HTML div 也不会保持可见

javascript - '类型错误: undefined is not a function' error when using 'flickrnode' API

scala - 理解 scala 界限的困惑

scala - 如何使用 ScalaCheck 生成打乱的序列?

java - 无法为 Playframework 导入 com.avaje.ebean.Model

javascript - 将字符串(其中仅包含数字)添加到数字会产生一个数字(根据 isNaN),它看起来应该是一个字符串?

javascript - 文件 API 在 Safari 中不工作

scala - 什么是 Scala 的简单构建工具 (sbt) 以及为什么使用它?

java - 在 Play FrameWork 中正确使用 @Security.Authenticated(Secured.class) 语句

scala - Scala 中的@Inject 是如何工作的