0

此代码在运行应用程序时有效,但 Dreamweaver 给出了语法错误。它不喜欢那里的问号。我喜欢 DW 没有语法错误。有没有不同的方法来写这个?我有 DW cs5.5 我无法升级 Dreamweaver 版本。

    if ( $('#postage6').val() == "Your Permit Standard" ) {
        $('#postage6rate').val('<?php echo $your_permit_standard; ?>');
    }

在问号前加一个反斜杠只会让它像这样打印,这是不对的。

    if ( $('#postage6').val() == "Your Permit Standard" ) {
        $('#postage6rate').val('<\?php echo $your_permit_standard; ?>');
    }

当它呈现时,应该有一个像这样的值:

    if ( $('#postage6').val() == "Your Permit Standard" ) {
        $('#postage6rate').val('0.333');
    }

这也不起作用:

    if ( $('#postage6').val() == "Your Permit Standard" ) {
        var somevar = "<?php echo $your_permit_standard; ?>";
        $('#postage6rate').val(somevar);
    }

语法错误只是从 PHP 变量所在的行转移到 PHP 变量所在的新行。

4

3 回答 3

6

您可以在单独的 php 块中定义该值:

<script type="text/javascript">
   var value = '<?=$your_permit_standard?>';
</script>

然后在你的 JS 中使用它:

if ( $('#postage6').val() == "Your Permit Standard" ) {
    $('#postage6rate').val(value);
}

但是你会在 PHP 中引入 JS 依赖项,我不建议这样做,但是因为你无论如何都在混合这两者......

于 2013-11-11T17:53:05.303 回答
1

.val()在使用 PHP设置方法参数之后,您似乎正在使用 JavaScript 设置输入值。为什么不直接用 PHP 设置输入的值呢?

<input type="text" name="postage6rate" value="<?php echo $your_permit_standard; ?>">

如果您需要在页面加载之外的某个时间运行此脚本,您可以将数据绑定到具有该data属性的元素。

<input type="text" name="postage6rate" data-permit="<?php echo $your_permit_standard; ?>">

然后当你需要运行你的脚本时……</p>

window.addEventListener('onSomeEvent', function addTheData() {
  var $input = $('input[name="postage6rate"]');
  $input.val($input.data('permit'));
});
于 2013-11-11T17:41:14.097 回答
0

我假设您javascript不是内联(在同一个PHP文件中),这会阻止PHP执行

尝试:

<?php 
$your_permit_standard = "0.335";
?>
<html>
  <body>
    <input id="postage6" name="postage6" value="Your Permit Standard"/>
    <input id="postage6rate" name="postage6rate"/>
    <script src="http://code.jquery.com/jquery-2.0.3.min.js"></script>
    <script>
    if ( $('#postage6').val() == "Your Permit Standard" ) {
        $('#postage6rate').val('<?php echo $your_permit_standard; ?>');
    }
    </script>
  </body>
<html>

这是工作示例

于 2013-11-11T18:17:19.143 回答