Javascript 动态替换href

Javascript 动态替换href,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我的网站中有以下代码行- 我想做的是,让用户在下载项目之前必须先填写表格: <div class="container"> <!-- Trigger the modal with a button --> <a href="#example1" class="btn btn-warning btn-lg" data-toggle="modal" data-target="#myModal">Download Item #1</a>

我的网站中有以下代码行-

我想做的是,让用户在下载项目之前必须先填写表格:

  <div class="container">
    <!-- Trigger the modal with a button -->
    <a href="#example1" class="btn btn-warning btn-lg" data-toggle="modal" data-target="#myModal">Download Item #1</a>

    <a href="#example2" class="btn btn-info btn-lg" data-toggle="modal" data-target="#myModal">Download Item #2</a>

    <!-- Modal -->
    <div class="modal fade" id="myModal" role="dialog">
      <div class="modal-dialog">
        <!-- Modal content-->
        <div class="modal-content">
          <div class="modal-header">
            <button type="button" class="close" data-dismiss="modal">&times;</button>
            <h4 class="modal-title">Modal Header</h4>
          </div>
          <div class="modal-body">
            <form role="form">
              <div class="form-group">
                <label for="email">Email address:</label>
                <input type="email" class="form-control" id="email">
              </div>
              <div class="form-group">
                <label for="pwd">Password:</label>
                <input type="password" class="form-control" id="pwd">
              </div>
              <div class="checkbox">
                <label>
                  <input type="checkbox"> Remember me</label>
              </div>
              <button type="submit" class="btn btn-default">Submit</button>
            </form>
          </div>
          <div class="modal-footer">
            <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
          </div>
        </div>
      </div>
    </div>
  </div>

如何使用户在选择页面上的第一个或第二个按钮时,将此信息发送到提交按钮?

您可以在JavaScript中向按钮添加一个单击处理程序:

var fieldsAreReadyToBeSent = function() {
    // Validation code goes here
    // return true if valid & false if invalid
};

document.querySelector("[type=submit]").addEventListener("click", function() {
    if(!fieldsAreReadyToBeSent()) {
        event.preventDefault();
    }
});
如果表单被视为无效,则event.preventDefault方法可防止表单被提交

演示: var FieldsAreadyToBesent=函数{ return false;//对于此演示,始终返回false }; document.querySelector[type=submit].addEventListenerclick,函数{ 如果!fieldsarreadytobesent{//对于这个演示,这总是正确的 违约事件; } }; &时代; 模态头 电邮地址: 密码: 记得我吗 提交 关
可以将链接存储在变量中。然后,单击按钮时,检查字段是否为空并应用任何验证规则。如果不是空的,请将提交应用于表单

$link = 'example.com/download.pdf';

$('.button').click(function(){
    // CHECK THE FIELDS ARE NOT EMPTY
    // APPLY YOUR OWN VALIDATION

    if($field1 = $('.field1').val() != '' && $('.field2').val() != ''){
       // DO WHAT YOU NEED TO DO WITH THE LINK
       $('form').submit();
    } 
})

顺便说一句,你可能不是因为没有向我们提供你解决自己问题的尝试而被我否决了。您向我们提供了您的html,但没有提供任何经过测试的逻辑。

感谢您对问题进行降级的人。。我不太清楚为什么或者你的理由是什么,但不管怎样,你都不是很有帮助。投票被否决可能有一些原因——你的问题是有点不清楚你到底想做什么。其次,“向下投票”按钮的工具提示说,这个问题没有显示任何研究成果-你的问题没有显示你到目前为止对解决这个问题的想法。@JamesThorpe:他可能不知道如何开始。。。这就是为什么我试图帮助他开始我的答案。从那以后,他应该能够自己弄清楚如何进行验证。。。