小编Alv*_*Mok的帖子

如何记住表格被延长?

我的项目中有一个多步骤表单,其第一步有一个javascript扩展字段函数,用户可以在其中添加其他字段.如果用户进入下一步,则数据当然存储在会话中直到最终提交.但是,不会记住扩展表格.如果用户从下一步返回,则不显示附加字段及其数据,更糟糕的是,如果附加字段中的数据无效,则用户将看不到它,因为消息显示在消失字段下方(I我正在使用Cakephp默认验证.

有没有办法,比如在会话中存储设置,让它留下来?

var counter = 0;
function moreFields(val1, val2, val3) {
	counter++;
	var newField = document.getElementById(val1).cloneNode(true);
	newField.id = '';
	newField.style.display = 'block';
	var newFields = newField.querySelectorAll('[name], [id], [for], [data-display]');
		for (var i=0;i<newFields.length;i++) {
			var theNames = newFields[i].name
			if (theNames)
				newFields[i].name = "data[" + val3 + "][" + counter + "][" + theNames + "]";
			var theNames2 = newFields[i].id;
	        if (theNames2)
	            newFields[i].id = theNames2 + counter;
	        	console.log(newFields[i].id); 
	        var theNames3 = newFields[i].htmlFor;
	        if (theNames3)
	            newFields[i].htmlFor = theNames3 + counter;
	        	//console.log(newFields[i].htmlFor);  
    		var theNames4 …
Run Code Online (Sandbox Code Playgroud)

javascript session jquery

5
推荐指数
1
解决办法
56
查看次数

在CakePHP中将变量从元素传递到视图

我有一个庞大的数组,在几个视图中使用,所以我将它存储在一个元素文件中,并在需要时获取它:

element/select.ctp:

$districts = array(
    __('Region A') => array(
        __('district 1') => __('district 1'),
        __('district 2') => __('district 1'),
        __('district 3') => __('district 1')
    ),
    __('Region B') => array(
        __('district 4') => __('district 4'),
        __('district 5') => __('district 5'),
        __('district 6') => __('district 6')
    )
);
Run Code Online (Sandbox Code Playgroud)

我把它包含在profiles/add.ctp:

echo $this->element('select');
echo $this->Form->Create('Profile');
echo $this->Form->input('district', array(
    'options' => $districts
);
Run Code Online (Sandbox Code Playgroud)

但是变量没有通过.我想知道如何从元素中传递它?

cakephp

4
推荐指数
1
解决办法
1064
查看次数

如何在textarea中为不同的语言设置不同的maxLength

我有一个textarea,用户可以输入英文或中文,或两者兼而有之.maxLength="50"英语很好,但我希望将汉字限制在20只.如果是混合的情况,它也应该限制为20.不确定我怎么能这样做?

html javascript

4
推荐指数
1
解决办法
962
查看次数

禁用已选中的字段

我试图在检查复选框时禁用字段集中的2个选择字段.我也尝试了类似getElementById或者方法getElementsByTagName,.attr()但它不起作用..

我希望加入disabledfieldset喜欢这个检查就当:

<fieldset id="test" disabled>
    <div class="col-lg-6">
        <?php echo $this->Form->input('frequency_remarks'); ?>
    </div>
    <div class="col-lg-6">
        <?php echo $this->Form->input('duration_remarks'); ?>
    </div>
</fieldset>
Run Code Online (Sandbox Code Playgroud)

复选框:

<div class="checkbox">
    <label for="CommentFrequencyOk">
        <input type="hidden" name="data[Comment][frequency_ok]" id="CommentFrequencyOk_" value="0" />
        <input type="checkbox" name="data[Comment][frequency_ok]" class="checkbox" value="1" id="CommentFrequencyOk" /> Frequency
    </label>
</div>
Run Code Online (Sandbox Code Playgroud)

剧本:

$('#CommentFrequencyOk').checked(function () {
    $('#test').setAttribute('disabled');
});
Run Code Online (Sandbox Code Playgroud)

html javascript jquery javascript-events

1
推荐指数
1
解决办法
88
查看次数

在变量中添加html

我正在尝试<br>在变量中添加一个html标记(在下面标记),但是当页面被渲染时,它被识别为纯文本.我不确定我哪里出错了.

PS不确定是否重要:我正在使用Cakephp.它是自定义帮助程序类中的变量.

App::uses('AppHelper', 'View/Helper');

class ComaHelper extends AppHelper {
    public $helpers = array('Time');

    public function coma($array, $name) {
        $prefix = ''; 
        $result = '';
        foreach ($array as $key => $value) { 

            $result .= $prefix . $value;

            if ($name == 'condition') { 
                $prefix = ', <br>'; // it's shown as plain text on the page
            } else { 
                $prefix = ', '; 
            }
        } 
        return $result;
    } 
}
Run Code Online (Sandbox Code Playgroud)

这页纸:

<?php echo h($this->Coma->coma($post['Condition'], 'condition')); ?>
Run Code Online (Sandbox Code Playgroud)

php cakephp

1
推荐指数
1
解决办法
63
查看次数

标签 统计

javascript ×3

cakephp ×2

html ×2

jquery ×2

javascript-events ×1

php ×1

session ×1